Functional Programming in Scheme The Order of Evaluation
The ordering of reductions
Given a complex expression, there are many different orderings of the applicable reductions
Using normal-order reduction, the first reduction to perform is the one at the outer level of the expression
Using applicative-order reduction, the first reduction to perform is the inner leftmost reduction
Normal-order reduction represents evaluation by need
Applicative-order reduction evaluates all constituent expressions, some of which are
unnecessary or perhaps even harmful. As such, there is often a need to control the
evaluation process withspecial formsthat use a non-standard evaluation strategy