Existe-t-il une convention de dénomination pour les fonctions d'ordre supérieur? Autrement dit, les fonctions qui renvoient d'autres fonctions.
Un exemple 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]
J'ai eu tendance à l'écrire comme ci-dessus: c'est-à-dire, en optimisant la lisibilité au point d'invocation (je lirais les dernières lignes ci-dessus comme "filtrer le tableau pour obtenir les éléments uniquement divisibles par 5"), mais au point de définition plus loin du contexte dans lequel il est utilisé, il n'est pas si facile de comprendre ce que cette fonction fait de son nom.