Functional Programming Currying var get = function(property, object) { return object[property]; } get('name'); Fork Function var fork = _.curry(function(lastly, f, g, x) { return lastly(f(x), g(x)); }); var avg = fork( _.divide, _.sum, _.size); assertEqual(3, avg([1,2,3,4,5]));