Curried JavaScript functions(svendtofte.com) |
Curried JavaScript functions(svendtofte.com) |
instead of this:
<code> function add (a,b,c){ if (arguments.length < this.add.length) { return curry(this.add,arguments,this); } return a+b+c; } </code>
we could have something like:
<code> function add (a,b,c) { return curry(arguments, 3, function (x,y,z) { return a+b+c; }; } </code>
which is arguably simpler and cleaner. However, one extra closure is used.. maybe it makes it more complicated for some?
But, overall, pretty clear and interesting article :o
var add = curry(function(a,b,c) { return a + b + c; });
You can find the code at http://ianhenderson.org/curry.js if you're interested.