An abstract machine for Lambda-terms normalization
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
An abstract frame work for environment machines
Theoretical Computer Science
Categorical combinators, sequential algorithms, and functional programming (2nd ed.)
Categorical combinators, sequential algorithms, and functional programming (2nd ed.)
ML for the working programmer (2nd ed.)
ML for the working programmer (2nd ed.)
A compiled implementation of strong reduction
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Demonstrating lambda calculus reduction
The essence of computation
A functional correspondence between evaluators and abstract machines
Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programming
The calculi of lambda-nu-cs conversion: a syntactic theory of control and state in imperative higher-order programming languages
Operational aspects of untyped Normalisation by Evaluation
Mathematical Structures in Computer Science
Lightweight fusion by fixed point promotion
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A concrete framework for environment machines
ACM Transactions on Computational Logic (TOCL)
Strongly reducing variants of the Krivine abstract machine
Higher-Order and Symbolic Computation
Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation
The theory of calculi with explicit substitutions revisited
CSL'07/EACSL'07 Proceedings of the 21st international conference, and Proceedings of the 16th annuall conference on Computer Science Logic
PEPM '13 Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation
Deriving interpretations of the gradually-typed lambda calculus
Proceedings of the ACM SIGPLAN 2014 Workshop on Partial Evaluation and Program Manipulation
Hi-index | 0.00 |
We derive by program transformation Pierre Crégut's full-reducing Krivine machine KN from the structural operational semantics of the normal order reduction strategy in a closure-converted pure lambda calculus. We thus establish the correspondence between the strategy and the machine, and showcase our technique for deriving full-reducing abstract machines. Actually, the machine we obtain is a slightly optimised version that can work with open terms and may be used in implementations of proof assistants.