Abstract
We define a weak λ-calculus, λσw, as a subsystem of the full λ-calculus with explicit substitutions λσup double arrow sign. We claim that λσw could be the archetypal output language of functional compilers, just as the λ-calculus is their universal input language. Furthermore, λσup double arrow sign 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.
Cite
CITATION STYLE
Harbin, T., Maranget, L., & Pagano, B. (1998). Functional runtime systems within the lambda-sigma calculus. Journal of Functional Programming, 8(2), 131–176. https://doi.org/10.1017/s0956796898002986
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.