2006
DOI: 10.1007/11964681_4
|View full text |Cite
|
Sign up to set email alerts
|

A Rational Deconstruction of Landin’s J Operator

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 term… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
9
0

Year Published

2006
2006
2007
2007

Publication Types

Select...
3
1

Relationship

4
0

Authors

Journals

citations
Cited by 4 publications
(9 citation statements)
references
References 30 publications
0
9
0
Order By: Relevance
“…Dijkstra's shunting-yard algorithm and Landin's SECD machine were directly written for programming languages of 'old provenience.' In Section 5 and in our earlier work [18,24], we have shown how each is the defunctionalized and CPS-transformed counterpart of a recursive program in direct style. Incidentally, the same can be said of the quicksort algorithm in Wirth's book: CPS-transforming and defunctionalizing the recursive definition that precedes the paragraph above in the book yields the iterative definition that immediately follows in the book.…”
Section: Resultsmentioning
confidence: 99%
See 3 more Smart Citations
“…Dijkstra's shunting-yard algorithm and Landin's SECD machine were directly written for programming languages of 'old provenience.' In Section 5 and in our earlier work [18,24], we have shown how each is the defunctionalized and CPS-transformed counterpart of a recursive program in direct style. Incidentally, the same can be said of the quicksort algorithm in Wirth's book: CPS-transforming and defunctionalizing the recursive definition that precedes the paragraph above in the book yields the iterative definition that immediately follows in the book.…”
Section: Resultsmentioning
confidence: 99%
“…Yet his SECD machine is in defunctionalized form and the defunctionalized counterpart of a compositional continuationpassing evaluation function [18]. Furthermore, the J operator captures the current dump, i.e., in refunctionalized form, the continuation of the caller [24]. This observation has led us to suggest that Landin's name be added to the list of co-discoverers of continuations [24].…”
Section: Refunctionalizationmentioning
confidence: 99%
See 2 more Smart Citations
“…Lightweight fusion of iterate o refocus yields a tail-recursive evaluation function in the form of Implementation #2, i.e., an abstract machine such as the CEK machine or the Krivine machine [2][3][4].…”
mentioning
confidence: 99%