Explaining the lazy Krivine machine using explicit substitution and addresses
Abstract
In a previous paper, Benaissa, Lescanne, and Rose, have extended the weak lambda-calculus of explicit substitution lambda-sigma-w with addresses, so that it gives an account of the sharing implemented by lazy functional language interpreters. We show in this paper that their calculus, called lambda-sigma-w-a, fits well to the lazy Krivine machine, which describes the core of a lazy (call-by-need) functional programming language implementation. The lazy Krivine machine implements term evaluation sharing, that is essential for efficiency of such languages. The originality of our proof is that it gives a very detailed account of the implemented strategy.
Domains
Software Engineering [cs.SE]
Origin : Files produced by the author(s)
Loading...