Implementing Open Call-by-Value

Beniamino Accattoli 1 Giulio Guerrieri 2
1 PARSIFAL - Proof search and reasoning with logic specifications
LIX - Laboratoire d'informatique de l'École polytechnique [Palaiseau], Inria Saclay - Ile de France
Abstract : The theory of the call-by-value λ-calculus relies on weak evaluation and closed terms, that are natural hypotheses in the study of programming languages. To model proof assistants, however, strong evaluation and open terms are required. Open call-by-value is the intermediate setting of weak evaluation with open terms, on top of which Grégoire and Leroy designed the abstract machine of Coq. This paper provides a theory of abstract machines for open call-by-value. The literature contains machines that are either simple but inefficient, as they have an exponential overhead, or efficient but heavy, as they rely on a labelling of environments and a technical optimization. We introduce a machine that is simple and efficient: it does not use labels and it implements open call-by-value within a bilinear overhead. Moreover, we provide a new fine understanding of how different optimizations impact on the complexity of the overhead. This work is part of a wider research effort, the COCA HOLA project
Document type :
Conference papers
Complete list of metadatas

Cited literature [25 references]  Display  Hide  Download
Contributor : Beniamino Accattoli <>
Submitted on : Thursday, January 4, 2018 - 1:56:19 PM
Last modification on : Thursday, January 23, 2020 - 6:22:13 PM
Long-term archiving on: Thursday, May 3, 2018 - 9:59:18 AM


Accattoli, Guerrieri - Impleme...
Files produced by the author(s)


Distributed under a Creative Commons Attribution 4.0 International License



Beniamino Accattoli, Giulio Guerrieri. Implementing Open Call-by-Value. 7th International Conference on Fundamentals of Software Engineering (FSEN), Apr 2017, Teheran, Iran. pp.1-19, ⟨10.1007/978-3-319-68972-2_1 ⟩. ⟨hal-01675365⟩



Record views


Files downloads