// Эта функция принимает функцию f и возвращает другую функцию, которая принимает a
function mapper(f) {
return function(a) { return map(a, f); };
}
// Объявляем функцию, которая будет f
var increment = function(x) { return x+1; };
// Передаем в mapper в качестве f функцию increment.
// Он возвращает новую функцию, которая принимает a
var incrementer = mapper(increment);
incrementer([1,2,3]) // => [2,3,4]