diff options
Diffstat (limited to 'sca-cpp/trunk/modules/js/htdocs/util.js')
-rw-r--r-- | sca-cpp/trunk/modules/js/htdocs/util.js | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sca-cpp/trunk/modules/js/htdocs/util.js b/sca-cpp/trunk/modules/js/htdocs/util.js index 2521b82311..336248d34c 100644 --- a/sca-cpp/trunk/modules/js/htdocs/util.js +++ b/sca-cpp/trunk/modules/js/htdocs/util.js @@ -129,7 +129,7 @@ function assoc(k, l) { } /** - * Map and filter functions. + * Map, filter and reduce functions. */ function map(f, l) { if (isNil(l)) @@ -145,6 +145,12 @@ function filter(f, l) { return filter(f, cdr(l)); } +function reduce(f, i, l) { + if (isNil(l)) + return i; + return reduce(f, f(i, car(l)), cdr(l)); +} + /** * Split a path into a list of segments. */ |