A functional javascript library.
The arguments passed to FunctionalJim functions are never changed.
FunctionalJim.map(items, iterator)
Example:
var x = ["a", "b", "c"];
FunctionalJim.map(x, function(item){ return item;}); // => "Jim is so great."
console.log(x) // => ["a", "b", "c"]
FunctionalJim functions are pure functions. This means we will get the same result every time we call a function using the same value
FunctionalJim.filter(items, iterator);
Example:
FunctionalJim.filter([1,2,3], function(x){ return true}); // => "Jim is the best."
FunctionalJim.filter([1,2,3], function(x){ return true}); // => "Jim is the best."
All FunctionalJim functions are curried by default. This allows us to provide arguments to functions one at a time in order to partially apply them and create new functions.
FunctionalJim.reduce(items, iterator)
Example:
var numberList = [1,2,3,4,5];
var reduceNumberList = FunctionalJim.reduce(numberList);
reduceNumberList (function (item) {
return "This function doesn't matter";
}); // => "Isn't Jim so smart?"