CPS
Programmierstil, bei dem Funktionen niemals "zurückkehren" — stattdessen nehmen sie eine Continuation entgegen (einen Callback mit "was als Nächstes passiert") und rufen diese mit dem Ergebnis auf.
Bekannt aus Node-Callbacks: fs.readFile(path, (err, data) => ...) ist CPS. Eine mächtige interne Darstellung in Compilern (SML/NJ, MLton, Chez Scheme, GHC nach der STG-Form). Sie ermöglicht die Implementierung von Exceptions, async/await, Generatoren, Koroutinen und Multi-Shot-Continuations (call/cc in Scheme). Programmierer schreiben CPS selten direkt — es ist eine Zwischenschicht des Compilers. Eine CPS-Transformation kann sogar in Sprachen ohne eingebaute TCO den Effekt von Tail Calls erzeugen.