Fonctions d'ordre supérieur
Une fonction d'ordre supérieur (HOF) est une fonction qui suit au moins l'une des conditions suivantes -
- Prend une ou plusieurs fonctions comme argument
- Renvoie une fonction comme résultat
HOF en PHP
L'exemple suivant montre comment écrire une fonction d'ordre supérieur en PHP, qui est un langage de programmation orienté objet -
<?php
$twice = function($f, $v) {
return $f($f($v));
};
$f = function($v) {
return $v + 3;
};
echo($twice($f, 7));
Il produira la sortie suivante -
13
HOF en Python
L'exemple suivant montre comment écrire une fonction d'ordre supérieur en Python, qui est un langage de programmation orienté objet -
def twice(function):
return lambda x: function(function(x))
def f(x):
return x + 3
g = twice(f)
print g(7)
Il produira la sortie suivante -
13