What is the difference between currying and partial application?

Currying is converting a single function of n arguments into n functions with a single argument each. Given the following function: function f(x,y,z) { z(x(y));} When curried, becomes: function f(x) { lambda(y) { lambda(z) { z(x(y)); } } } In order to get the full application of f(x,y,z), you need to do this: f(x)(y)(z); Many … Read more