Operational Semantics for Lazy Evaluation
Abstract
An operational semantics for lazy evaluation of a calculus without higher order functions was defined. Although it optimizes many aspects of implementation, e.g. there is a sharing in the recursive computation, there is no α conversion, the heap is automatically reclaimed, and an attempt to evaluate an argument is done at most once. It is still suitable for reasoning about program behavior and proofs of program correctness; this is primarily due to the definition via inferences and axioms which allows for proofs by induction on the height of the proof tree. We also proved the correctness of this operational semantics by showing that it is equivalent with respect to the values calculated to the operational semantics of LAZY-PCF+SHAR due to S. Purushothaman Iyer and Jill Seaman.
DOI: https://doi.org/10.3844/jcssp.2007.639.645
Copyright: © 2007 Mahmoud A. Abou Ghaly, Sameh S. Daoud, Azza A. Taha and Salwa M. Aly. This is an open access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.
- 3,073 Views
- 2,647 Downloads
- 0 Citations
Download
Keywords
- Higher order functions
- α conversion
- LAZY-PCF+SHAR