2007
DOI: 10.1016/j.tcs.2006.12.028
|View full text |Cite
|
Sign up to set email alerts
|

A syntactic correspondence between context-sensitive calculi and abstract machines

Abstract: We present a systematic construction of environment-based abstract machines from context-sensitive calculi of explicit substitutions, and we illustrate it with ten calculi and machines for applicative order with an abort operation, normal order with generalized reduction and call/cc, the lambda-mu-calculus, delimited continuations, stack inspection, proper tail-recursion, and lazy evaluation. Most of the machines already exist but have been obtained independently and are only indirectly related to the correspo… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
37
0

Year Published

2007
2007
2014
2014

Publication Types

Select...
5
1

Relationship

4
2

Authors

Journals

citations
Cited by 45 publications
(37 citation statements)
references
References 76 publications
0
37
0
Order By: Relevance
“…Programmatically, the J operator has been superseded by control operators that capture the current continuation (i.e., both C and D) instead of the continuation of the caller (i.e., D), even though it is simple to simulate escape and call/cc in terms of J. Yet as we have shown here, both the SECD machine and the J operator fit in the functional correspondence [3,4,6,7,13,16,30,31] as well as in the syntactic correspondence [12,14,15,29,31,40], which made it possible for us to mechanically characterize them in new and precise ways. 7 In turn it was Landin who, through the J operator, invented what we know today as first-class continuations [49].…”
Section: Discussionmentioning
confidence: 93%
See 3 more Smart Citations
“…Programmatically, the J operator has been superseded by control operators that capture the current continuation (i.e., both C and D) instead of the continuation of the caller (i.e., D), even though it is simple to simulate escape and call/cc in terms of J. Yet as we have shown here, both the SECD machine and the J operator fit in the functional correspondence [3,4,6,7,13,16,30,31] as well as in the syntactic correspondence [12,14,15,29,31,40], which made it possible for us to mechanically characterize them in new and precise ways. 7 In turn it was Landin who, through the J operator, invented what we know today as first-class continuations [49].…”
Section: Discussionmentioning
confidence: 93%
“…Symmetrically to the functional correspondence between evaluation functions and abstract machines that was sparked by the first rational deconstruction of the SECD machine [3,4,6,7,13,16,30,31], a syntactic correspondence exists between calculi and abstract machines, as investigated by Biernacka, Danvy, and Nielsen [12,14,15,29,31,40]. This syntactic correspondence is also derivational, and hinges not on defunctionalization but on a 'refocusing' transformation that mechanically connects an evaluation function defined as the iteration of one-step reduction, and an abstract machine.…”
Section: A Syntactic Theory Of Applicative Expressions With the J Opementioning
confidence: 99%
See 2 more Smart Citations
“…Like Clinger, we focus on Core Scheme and do not consider primitive procedures and first-class continuations here. (These are unproblematic to add [4,7].) Figure 4], we fixed one typo in the declaration of the evaluation-context constructor for calls, which holds a list of semantic values, not a list of syntactic terms.…”
Section: Semanticsmentioning
confidence: 99%