¿Existe una convención de nomenclatura para funciones de orden superior? Es decir, funciones que devuelven otras funciones.
Un ejemplo en Javascript:
function onlyDivisibleBy(div) { // <-- higher order function
return function (n) {
return n % div === 0;
}
}
var arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
arr.filter(onlyDivisibleBy(3)); // [0, 3, 6, 9]
arr.filter(onlyDivisibleBy(5)); // [0, 5]
He tendido a escribirlo como se indica arriba: es decir, optimizar la legibilidad en el punto de invocación (leería las últimas líneas de arriba como "filtrar la matriz para obtener elementos solo divisibles por 5"), sin embargo, en el punto de definición desde el contexto en el que se usa, no es tan fácil entender lo que hace esta función desde su nombre.