Funktionen höherer Ordnung
Eine Funktion höherer Ordnung (HOF) ist eine Funktion, die mindestens einer der folgenden Bedingungen folgt:
- Übernimmt mindestens mehrere Funktionen als Argument
- Gibt eine Funktion als Ergebnis zurück
HOF in PHP
Das folgende Beispiel zeigt, wie eine Funktion höherer Ordnung in PHP geschrieben wird, einer objektorientierten Programmiersprache.
<?php
$twice = function($f, $v) {
return $f($f($v));
};
$f = function($v) {
return $v + 3;
};
echo($twice($f, 7));
Es wird die folgende Ausgabe erzeugt -
13
HOF in Python
Das folgende Beispiel zeigt, wie eine Funktion höherer Ordnung in Python geschrieben wird, einer objektorientierten Programmiersprache.
def twice(function):
return lambda x: function(function(x))
def f(x):
return x + 3
g = twice(f)
print g(7)
Es wird die folgende Ausgabe erzeugt -
13