annotate scripts/miscellaneous/module.mk @ 31245:a887ffb997a7

New function memoize to optimize repetitive function calls (bug #60860). * scripts/miscellaneous/clearAllMemoizedCaches.m: new function. * scripts/miscellaneous/memoize.m: new function. * scripts/miscellaneous/private/__memoize__.m: new function. * scripts/miscellaneous/module.mk: add new functions to build system. * scripts/+matlab/+lang/MemoizedFunction.m: new function. * scripts/+matlab/+lang/module.mk: add new functions to build system.
author Guillaume Flandin <guillaume.offline@gmail.com>
date Tue, 27 Sep 2022 16:12:45 -0400
parents 1921d9d0e62b
children a11d7442f9cd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
20343
916cc788d906 fix installation of script files
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
1 FCN_FILE_DIRS += \
28061
8f5e625062f3 use %reldir% in more places in module.mk files in scripts directory
John W. Eaton <jwe@octave.org>
parents: 27962
diff changeset
2 %reldir% \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
3 %reldir%/private
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
4
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
5 %canon_reldir%_PRIVATE_FCN_FILES = \
31245
a887ffb997a7 New function memoize to optimize repetitive function calls (bug #60860).
Guillaume Flandin <guillaume.offline@gmail.com>
parents: 30881
diff changeset
6 %reldir%/private/__memoize__.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
7 %reldir%/private/__publish_html_output__.m \
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
8 %reldir%/private/__publish_latex_output__.m \
23526
dc3745744aef maint: sort lists of function files
Mike Miller <mtmiller@octave.org>
parents: 23495
diff changeset
9 %reldir%/private/__w2mpth__.m \
27332
c80ba7295b5e build: include new function tar_is_bsd.m in the build system
Mike Miller <mtmiller@octave.org>
parents: 26742
diff changeset
10 %reldir%/private/display_info_file.m \
c80ba7295b5e build: include new function tar_is_bsd.m in the build system
Mike Miller <mtmiller@octave.org>
parents: 26742
diff changeset
11 %reldir%/private/tar_is_bsd.m
9899
9f25290a35e8 more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents: 9794
diff changeset
12
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
13 %canon_reldir%_FCN_FILES = \
28971
02b97abbc6fc maint: rename .oct_config files to .oct-config
John W. Eaton <jwe@octave.org>
parents: 28956
diff changeset
14 %reldir%/.oct-config \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
15 %reldir%/bug_report.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
16 %reldir%/bunzip2.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
17 %reldir%/cast.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
18 %reldir%/citation.m \
31245
a887ffb997a7 New function memoize to optimize repetitive function calls (bug #60860).
Guillaume Flandin <guillaume.offline@gmail.com>
parents: 30881
diff changeset
19 %reldir%/clearAllMemoizedCaches.m \
26170
96bc9ee8e77f clearvars.m: Implement new function.
Rik <rik@octave.org>
parents: 25782
diff changeset
20 %reldir%/clearvars.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
21 %reldir%/compare_versions.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
22 %reldir%/computer.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
23 %reldir%/copyfile.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
24 %reldir%/delete.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
25 %reldir%/dir.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
26 %reldir%/dos.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
27 %reldir%/edit.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
28 %reldir%/fieldnames.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
29 %reldir%/fileattrib.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
30 %reldir%/fileparts.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
31 %reldir%/fullfile.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
32 %reldir%/getfield.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
33 %reldir%/grabcode.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
34 %reldir%/gunzip.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
35 %reldir%/info.m \
24861
7d66084d2660 maint: sort lists of function files in build system
Mike Miller <mtmiller@octave.org>
parents: 24600
diff changeset
36 %reldir%/inputParser.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
37 %reldir%/inputname.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
38 %reldir%/isdeployed.m \
25782
0862570da0ae isfile.m: New function for Matlab compatibility (bug #54508).
Rik <rik@octave.org>
parents: 25781
diff changeset
39 %reldir%/isfile.m \
25780
7c5956c45a29 isfolder.m: New function for Matlab compatibility (bug #54456).
Guillaume Flandin <guillaume.offline@gmail.com>
parents: 25012
diff changeset
40 %reldir%/isfolder.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
41 %reldir%/ismac.m \
26742
1d2552e895e6 * scripts/miscellaneous/module.mk: Fix file name added in previous changeset.
John W. Eaton <jwe@octave.org>
parents: 26741
diff changeset
42 %reldir%/ismethod.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
43 %reldir%/ispc.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
44 %reldir%/isunix.m \
30293
1a1f3ae76e74 Use underscores instead of CamelCase in jupyter_notebook classdef
Abdallah Elshamy <abdallah.k.elshamy@gmail.com>
parents: 30169
diff changeset
45 %reldir%/jupyter_notebook.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
46 %reldir%/license.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
47 %reldir%/list_primes.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
48 %reldir%/loadobj.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
49 %reldir%/ls.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
50 %reldir%/ls_command.m \
31245
a887ffb997a7 New function memoize to optimize repetitive function calls (bug #60860).
Guillaume Flandin <guillaume.offline@gmail.com>
parents: 30881
diff changeset
51 %reldir%/memoize.m \
28372
2f571bfff344 Add "memory" function (patch #9924).
Lars Kindermann <lars.kindermann@reglos.de>
parents: 28061
diff changeset
52 %reldir%/memory.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
53 %reldir%/menu.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
54 %reldir%/methods.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
55 %reldir%/mex.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
56 %reldir%/mexext.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
57 %reldir%/mkdir.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
58 %reldir%/mkoctfile.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
59 %reldir%/movefile.m \
27962
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
60 %reldir%/mustBeFinite.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
61 %reldir%/mustBeGreaterThan.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
62 %reldir%/mustBeGreaterThanOrEqual.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
63 %reldir%/mustBeInteger.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
64 %reldir%/mustBeLessThan.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
65 %reldir%/mustBeLessThanOrEqual.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
66 %reldir%/mustBeMember.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
67 %reldir%/mustBeNegative.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
68 %reldir%/mustBeNonempty.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
69 %reldir%/mustBeNonNan.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
70 %reldir%/mustBeNonnegative.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
71 %reldir%/mustBeNonpositive.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
72 %reldir%/mustBeNonsparse.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
73 %reldir%/mustBeNonzero.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
74 %reldir%/mustBeNumeric.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
75 %reldir%/mustBeNumericOrLogical.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
76 %reldir%/mustBePositive.m \
3b8d21ff0ca6 New validator functions implementation (bug #57627).
Andrew Janke <andrew@apjanke.net>
parents: 27426
diff changeset
77 %reldir%/mustBeReal.m \
27426
3ec072ab1bda namedargs2cell.m: New function (bug #56903).
Rik <rik@octave.org>
parents: 27332
diff changeset
78 %reldir%/namedargs2cell.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
79 %reldir%/namelengthmax.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
80 %reldir%/nargchk.m \
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
81 %reldir%/narginchk.m \
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
82 %reldir%/nargoutchk.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
83 %reldir%/news.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
84 %reldir%/nthargout.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
85 %reldir%/open.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
86 %reldir%/orderfields.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
87 %reldir%/pack.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
88 %reldir%/parseparams.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
89 %reldir%/perl.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
90 %reldir%/publish.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
91 %reldir%/python.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
92 %reldir%/recycle.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
93 %reldir%/run.m \
24491
d8fb16ab0992 maint: move non-numeric m-files from general/ to miscellaneous/ dir.
Rik <rik@octave.org>
parents: 24490
diff changeset
94 %reldir%/saveobj.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
95 %reldir%/setfield.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
96 %reldir%/substruct.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
97 %reldir%/swapbytes.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
98 %reldir%/symvar.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
99 %reldir%/tar.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
100 %reldir%/unix.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
101 %reldir%/unpack.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
102 %reldir%/untar.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
103 %reldir%/unzip.m \
24861
7d66084d2660 maint: sort lists of function files in build system
Mike Miller <mtmiller@octave.org>
parents: 24600
diff changeset
104 %reldir%/validateattributes.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
105 %reldir%/ver.m \
26608
0f187a956d47 Add verLessThan function (bug #55525)
Andrew Janke <andrew@apjanke.net>
parents: 26202
diff changeset
106 %reldir%/verLessThan.m \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
107 %reldir%/version.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
108 %reldir%/what.m \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
109 %reldir%/zip.m
20343
916cc788d906 fix installation of script files
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
110
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
111 %canon_reldir%dir = $(fcnfiledir)/miscellaneous
20343
916cc788d906 fix installation of script files
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
112
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
113 %canon_reldir%_DATA = $(%canon_reldir%_FCN_FILES)
20343
916cc788d906 fix installation of script files
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
114
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
115 %canon_reldir%_privatedir = $(fcnfiledir)/miscellaneous/private
20343
916cc788d906 fix installation of script files
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
116
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
117 %canon_reldir%_private_DATA = $(%canon_reldir%_PRIVATE_FCN_FILES)
20343
916cc788d906 fix installation of script files
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
118
916cc788d906 fix installation of script files
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
119 FCN_FILES += \
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
120 $(%canon_reldir%_FCN_FILES) \
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
121 $(%canon_reldir%_PRIVATE_FCN_FILES)
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
122
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
123 PKG_ADD_FILES += %reldir%/PKG_ADD
9906
8d20fb66a0dc more automake fixes
John W. Eaton <jwe@octave.org>
parents: 9899
diff changeset
124
23495
8308417aff1c use automake %reldir% feature
John W. Eaton <jwe@octave.org>
parents: 22160
diff changeset
125 DIRSTAMP_FILES += %reldir%/$(octave_dirstamp)