Deriving a Lazy Abstract Machine

@article{Sestoft1997DerivingAL,
  title={Deriving a Lazy Abstract Machine},
  author={Peter Sestoft},
  journal={J. Funct. Program.},
  year={1997},
  volume={7},
  pages={231-264}
}
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, that is, 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 nal machine implements all dynamic aspects of a lazy functional… CONTINUE READING
Highly Influential
This paper has highly influenced 31 other papers. REVIEW HIGHLY INFLUENTIAL CITATIONS

From This Paper

Topics from this paper.

Citations

Publications citing this paper.
Showing 1-10 of 130 extracted citations

References

Publications referenced by this paper.
Showing 1-10 of 27 references

The -calculus: an abstract framework for environment

  • P. L. Curien
  • 1988
Highly Influential
4 Excerpts

The implementation of functional programming languages

  • S. L. Peyton Jones
  • 1987
Highly Influential
4 Excerpts

Analysis and e cient implementation of functional programs

  • P. Sestoft
  • 1991
Highly Influential
2 Excerpts

Deriving a lazy abstract machine

  • P. Sestoft
  • Tech. rept. ID-TR 1994-146
  • 1994
1 Excerpt

Similar Papers

Loading similar papers…