Author:
HARDIN THÉRÈSE,MARANGET LUC,PAGANO BRUNO
Abstract
We define a weak λ-calculus, λσw,
as a subsystem of the full λ-calculus with explicit substitutions
λσ[uArr ]. We
claim that λσw could be the archetypal
output
language of functional compilers, just as the λ-calculus is their
universal input
language. Furthermore, λσ[uArr ] could be
the adequate theory to establish the correctness of functional compilers.
Here we illustrate
these claims by proving the correctness of four simplified compilers and
runtime systems
modelled as abstract machines. The four machines we prove are the Krivine
machine, the
SECD, the FAM and the CAM. Thus, we give the first formal proofs of Cardelli's
FAM and
of its compiler.
Publisher
Cambridge University Press (CUP)
Cited by
31 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Coinductive Natural Semantics for Compiler Verification in Coq;Mathematics;2020-09-12
2. Formal Small-Step Verification of a Call-by-Value Lambda Calculus Machine;Programming Languages and Systems;2018
3. Environments and the complexity of abstract machines;Proceedings of the 19th International Symposium on Principles and Practice of Declarative Programming;2017-10-09
4. A Strong Distillery;Programming Languages and Systems;2015
5. Distilling abstract machines;ACM SIGPLAN Notices;2014-11-26