Proceedings of the 13th ACM SIGPLAN International Conference on Functional Programming 2008
DOI: 10.1145/1411204.1411206
|View full text |Cite
|
Sign up to set email alerts
|

Defunctionalized interpreters for programming languages

Abstract: This document illustrates how functional implementations of formal semantics (structural operational semantics, reduction semantics, small-step and big-step abstract machines, natural semantics, and denotational semantics) can be transformed into each other. These transformations were foreshadowed by Reynolds in "Definitional Interpreters for Higher-Order Programming Languages" for functional implementations of denotational semantics, natural semantics, and big-step abstract machines using closure conversion, … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

1
35
0

Year Published

2009
2009
2020
2020

Publication Types

Select...
5
2

Relationship

2
5

Authors

Journals

citations
Cited by 32 publications
(36 citation statements)
references
References 54 publications
1
35
0
Order By: Relevance
“…Not surprisingly, the computational content of our proofs are instances of normalization by evaluation; the extracted programs are evaluators in continuation-passing style, whose continuations arise by extraction from a context reducibility predicate. Thus the present article provides a logical confirmation of the connection between continuations and contexts, previously observed and investigated by Danvy [11,12].…”
Section: Introductionsupporting
confidence: 89%
See 2 more Smart Citations
“…Not surprisingly, the computational content of our proofs are instances of normalization by evaluation; the extracted programs are evaluators in continuation-passing style, whose continuations arise by extraction from a context reducibility predicate. Thus the present article provides a logical confirmation of the connection between continuations and contexts, previously observed and investigated by Danvy [11,12].…”
Section: Introductionsupporting
confidence: 89%
“…Moreover, they are in continuation-passing style and the continuations arise as the computational content of the reducibility predicates for reduction contexts. This latter fact shows a logical connection between continuations and contexts; the correspondence between them has previously been observed and investigated by Danvy in the setting of program transformations [11,12]. The method of proof developed in this paper relies on the formalism of reduction semantics and is therefore fitted for languages with context-sensitive notion of reduction.…”
Section: Discussionmentioning
confidence: 56%
See 1 more Smart Citation
“…It is usually left unspecified in the literature [29]. We define it here in a form that time and again we have found convenient [19], namely as a big-step abstract machine. Here, this abstract machine has (a) two intermediate states: a term and a context, and a context and a value; and (b) three state-transition functions decompose_term, decompose_term_neg, and decompose_context.…”
Section: A3 Reduction Strategymentioning
confidence: 99%
“…Our goal here is to apply Danvy et al's 'syntactic correspondence' and 'functional correspondence' [3,8,11,18,19,[43][44][45] to Abadi and Cardelli's untyped non-imperative calculus of objects [1,Chapter 6]. In the rest of this introduction, we describe in turn the syntactic correspondence, the functional correspondence, and Abadi and Cardelli's calculus of objects, before detailing our contribution.…”
Section: Introductionmentioning
confidence: 99%