(CBN) (Normal order reduction, leftmost, outermost reduction).
An argument passing convention (first provided by
ALGOL 60?)
where argument expressions are passed unevaluated. This is
usually implemented by passing a pointer to some code which
will return the value of the argument and an environment
exists.
avoid repeated evaluation of the same expression. This is
passed to a function. This is more efficient but is less
likely to terminate in the presence of infinite data
are usually passed using call-by-name.
(1994-11-29)