One can define lazyness in two ways:

1. Lazyness is a demand to the programming language not
   to reduce every subterm of an expression (if this is
   possible). In this sense outermost reduction is one
   kind of lazy-evaluation (see also Bird/Wadler Introduction
   to Functional Programming).

2. Lazyness does not change the semantic of a program (outermost-
   reduction would do). It's a set of tricks which makes it
   possible to do evaluation without reducing subterms twice
   (see also Peyton Jones/Lester Implementing Functional Languages).


Does there exist a common sense concerning the meaning of lazyness?



Marc Rehmsmeier

(Please excuse my bad English...)




Reply via email to