Lazy Evaluation

Lazy Evaluation (bequeme [faule] Auswertung) bezeichnet in der Informatik eine Art der Auswertung von Ausdrücken, bei der das Ergebnis des auszuwertenden Ausdrucks nur so weit berechnet wird, wie es gerade benötigt wird.

Ein Vorteil einer solchen Auswertungsstrategie ist Zeitersparnis, da Funktionsaufrufe ganz vermieden oder zumindest teilweise eingespart werden können. Außerdem gibt Lazy Evaluation dem Programmierer die Möglichkeit, unendliche Datenstrukturen zu verwenden. Ein Nachteil ist die erschwerte Fehlerbereinigung in Programmen, die lazy evaluiert werden. Oft ist nicht auf den ersten Blick nachvollziehbar, ob ein Ausdruck zu einem bestimmten Zeitpunkt bereits ausgewertet wurde. Dies ist insbesondere dann problematisch, wenn Funktionsaufrufe eine Nebenwirkung haben können.

Ein auf logische Ausdrücke eingeschränkter Spezialfall ist die Kurzschlussauswertung, die auch in vielen nicht-lazy-Sprachen wie C oder Java implementiert ist.


From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by razib.in