Functional runtime systems within the lambda-sigma calculus

  • Authors:
  • Thérèse Hardin;Luc Maranget;Bruno Pagano

  • Affiliations:
  • LIP6, Université Pierre et Marie Curie, 75252 Paris Cedex 05, France, INRIA Rocquencourt, BP 105, 78153 Le Chesnay Cedex, France (e-mail: Therese.Hardin@lip6.fr);INRIA Rocquencourt, BP 105, 78153 Le Chesnay Cedex, France (e-mail: Luc.Maranget@inria.fr);LIP6, Université Pierre et Marie Curie, 75252 Paris Cedex 05, France (e-mail: Bruno.Pagano@lip6.fr)

  • Venue:
  • Journal of Functional Programming
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

We define a weak λ-calculus, λσw, as a subsystem of the full λ-calculus with explicit substitutions λσ⇑. We claim that λσw could be the archetypal output language of functional compilers, just as the λ-calculus is their universal input language. Furthermore, λσ⇑ 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.