Die meisten bekannten Algorithmen sind in dem Sinne erster Ordnung, dass ihre Eingabe und Ausgabe "reine" Daten sind. Einige sind in trivialer Weise von zweiter Ordnung, zum Beispiel Sortierung, Hashtabellen oder Map- und Fold-Funktionen: Sie werden durch eine Funktion parametrisiert, aber sie tun nichts wirklich Interessantes damit, außer sie für Teile anderer Eingabedaten aufzurufen.
Einige sind auch zweiter Ordnung, aber etwas interessanter:
- Von Monoiden parametrisierte Fingerbäume
- Aufteilen eines Fingerabdrucks auf ein eintöniges Prädikat
- Präfixsummenalgorithmen, die wiederum normalerweise durch ein Monoid oder ein Prädikat usw. parametrisiert werden.
Schließlich sind einige in dem für mich interessantesten Sinne "wirklich" übergeordnet:
- Der Y-Kombinator
- Differenzlisten
Gibt es noch andere nichttriviale Algorithmen höherer Ordnung?
In dem Versuch, meine Frage zu klären, meine ich unter "nichttrivialer höherer Ordnung" "die kritische Verwendung von Einrichtungen höherer Ordnung des Computerformalismus in der Schnittstelle und / oder Implementierung des Algorithmus".