Sestoft, Peter Deriving a lazy abstract machine. (English) Zbl 0881.68049 J. Funct. Program. 7, No. 3, 231-264 (1997). Summary: We derive a simple abstract machine for lazy evaluation of the lambda calculus, starting from Launchbury’s natural semantics. Lazy evaluation here means non-strict evaluation with sharing of argument evaluation, i.e. call-by-need. The machine we derive is a lazy version of Krivine’s abstract machine, which was originally designed for call-by-name evaluation. We extend it with datatype constructors and base values, so the final machine implements all dynamic aspects of a lazy functional language. Cited in 1 ReviewCited in 28 Documents MSC: 68Q05 Models of computation (Turing machines, etc.) (MSC2010) Keywords:lambda calculus; lazy functional language PDFBibTeX XMLCite \textit{P. Sestoft}, J. Funct. Program. 7, No. 3, 231--264 (1997; Zbl 0881.68049) Full Text: DOI