Abstract
One of the goals of this paper is to demonstrate that denotational semantics is useful
for operational issues like implementation of functional languages by abstract machines.
This is exemplified in a tutorial way by studying the case of extensional untyped call-by-name
λ-calculus with Felleisen's control operator [Cscr ].
We derive the transition rules for an
abstract machine from a continuation semantics which appears as a generalization of the
¬¬-translation known from logic. The resulting abstract machine
appears as an extension of Krivine's machine implementing head reduction. Though
the result, namely Krivine's machine,
is well known our method of deriving it from continuation semantics is new and applicable to
other languages (as e.g. call-by-value variants). Further new results
are that Scott's D∞-models
are all instances of continuation models. Moreover, we extend our continuation semantics to
Parigot's λμ-calculus from which we derive an extension of Krivine's
machine for λμ-calculus. The relation between continuation semantics
and the abstract machines is made precise by
proving computational adequacy results employing an elegant method introduced by Pitts.
Publisher
Cambridge University Press (CUP)
Cited by
70 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Fully Abstract Encodings of $\lambda$-Calculus in HOcore through Abstract Machines;Logical Methods in Computer Science;2024-07-03
2. ADDING NEGATION TO LAMBDA MU;LOG METH COMPUT SCI;2023
3. A first-order completeness result about characteristic Boolean algebras in classical realizability;Proceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer Science;2022-08-02
4. From Linear Logic to Cyclic Sharing;Electronic Proceedings in Theoretical Computer Science;2019-04-15
5. The problem of proof identity, and why computer scientists should care about Hilbert's 24th problem;Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences;2019-01-21