The very lazy λ-calculus and the STEC machine

  • Authors:
  • Jan Rochel

  • Affiliations:
  • Universiteit Utrecht, The Netherlands and Department of Computer Science

  • Venue:
  • IFL'09 Proceedings of the 21st international conference on Implementation and application of functional languages
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Current implementations of non-strict functional languages rely on call-by-name reduction to implement the λ-calculus. An interesting alternative is head occurrence reduction, a reduction strategy specifically designed for the implementation of non-strict, purely functional languages. This work introduces the very lazy λ-calculus, which allows a systematic description of this approach. It is not based on regular β-reduction but a generalised rewriting rule called γ-reduction that requires fewer reductions to obtain useful results from a term. It therefore promises more efficient program execution than conventional execution models. To demonstrate the applicability of the approach, an adaptation of the Pointer Abstract Machine (PAM) is specified that implements the very lazy λ-calculus and constitutes a foundation for a new class of efficient functional language implementations.