A First-Order One-Pass CPS Transformation
Olivier Danvy
December 2001 |
Abstract:
We present a new transformation of call-by-value lambda-terms
into continuation-passing style (CPS). This transformation operates in one
pass and is both compositional and first-order. Because it operates in one
pass, it directly yields compact CPS programs that are comparable to what one
would write by hand. Because it is compositional, it allows proofs by
structural induction. Because it is first-order, reasoning about it does not
require the use of a logical relation.
This new CPS transformation connects two separate lines of research. It has already been used to state a new and simpler correctness proof of a direct-style transformation, and to develop a new and simpler CPS transformation of control-flow information Available as PostScript, PDF, DVI. |