Auswertung (engl. evaluation als Beschreibung, Analyse und Bewertung) bezeichnet in der Informatik den Vorgang, der einem
Ausdruck (eventuell in einem gegebenen
Kontext von Variablenbindungen) einen
Wert zuordnet.
Programmiersprachen sind nach ihrer Auswertungsstrategie unterscheidbar:Bei strenger Auswertung oder strikter Auswertung (engl. eager bzw. ) werden Ausdrücke sofort ausgewertet. Z. B. bei der Berechnung einer Funktion werden bei strikter Auswertung erst die Argumentausdrücke ausgewertet, bevor der
Funktionsrumpf ausgewertet wird.Dem gegenüber steht die Bedarfsauswertung oder verzögerte Auswertung (engl. ), bei der Ausdrücke erst ausgewertet werden, wenn deren Wert in einer Berechnung benötigt wird. Dadurch lassen sich z. B. unendlich große
Datenstrukturen (z. B. die Liste aller natürlicher Zahlen, die Liste aller Primzahlen, usw.) definieren und bestimmte Algorithmen vereinfachen sich. Diese Datenstrukturen bezeichnet man als
Ströme (engl. streams).
Mehr unter Wikipedia.org...