Implementing Open Call-by-Value

Beniamino Accattoli, Giulio Guerrieri

Research output: Chapter or section in a book/report/conference proceedingChapter in a published conference proceeding

10 Citations (SciVal)


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.

Original languageEnglish
Title of host publicationFundamentals of Software Engineering - 7th International Conference, FSEN 2017, Revised Selected Papers
EditorsMarjan Sirjani, Mehdi Dastani, Marjan Sirjani
PublisherSpringer Verlag
Number of pages19
ISBN (Print)9783319689715
Publication statusPublished - 11 Oct 2017
Event7th International Conference on Fundamentals of Software Engineering, FSEN 2017 - Teheran, Iran, Islamic Republic of
Duration: 26 Apr 201728 Apr 2017

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume10522 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Conference7th International Conference on Fundamentals of Software Engineering, FSEN 2017
Country/TerritoryIran, Islamic Republic of

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)


Dive into the research topics of 'Implementing Open Call-by-Value'. Together they form a unique fingerprint.

Cite this