Computer Software
Print ISSN : 0289-6540
Derivation of an Abstract Machine for λ-calculus with Delimited-Continuation Constructs
Arisa KITANIKenichi ASAI
Author information
JOURNAL FREE ACCESS

2010 Volume 27 Issue 3 Pages 3_51-3_66

Details
Abstract

The goal of our research is to give a verified abstract machine for the λ-calculus with delimited continuation constructs, shift and reset, and ultimately to give a formal foundation for the direct implementation of shift/reset in the machine language. Toward this goal, we derive an abstract machine and transition rules from the CPS interpreter defining shift/reset, using a series of transformations whose correctness is already proved. Following the “functional correspondence” approach advocated by Danvy, we first perform the CPS transformation and defunctionalization. Unlike the previous approach, however, we formally introduce two new transformations, stack introduction and environment storing, to turn the interpreter closer to the actual implementation. In this article, we show outline and validity of the two transformations. As a result, we obtain an abstract machine that stores bindings in the stack from the original CPS interpreter using validated transformations only. In the future, after additional transformations, we expect that this abstract machine is turned into a virtual machine, which is similar to the existing machine language implementation.

Content from these authors
© Japan Society for Software Science and Technology 2010
Previous article Next article
feedback
Top