A Rational Deconstruction of Landin's J Operator
Olivier Danvy
February 2006 |
Abstract:
Landin's J operator was the first control operator for
functional languages, and was specified with an extension of the SECD
machine. Through a series of meaning-preserving transformations
(transformation into continuation-passing style (CPS) and
defunctionalization) and their left inverses (transformation into direct
style and refunctionalization), we present a compositional evaluation
function corresponding to this extension of the SECD machine. We then
characterize the J operator in terms of CPS and in terms of delimited-control
operators in the CPS hierarchy. Finally, we present a motivated wish to see
Landin's name added to the list of co-discoverers of
continuations
Available as PostScript, PDF, DVI. |