Skip to main navigation Skip to search Skip to main content

The complexity of abstract machines

Research output: Contribution to journalConference articlepeer-review

Abstract

The λ-calculus is a peculiar computational model whose definition does not come with a notion of machine. Unsurprisingly, implementations of the λ-calculus have been studied for decades. Abstract machines are implementations schema for fixed evaluation strategies that are a compromise between theory and practice: they are concrete enough to provide a notion of machine and abstract enough to avoid the many intricacies of actual implementations. There is an extensive literature about abstract machines for the λ-calculus, and yet - quite mysteriously - the efficiency of these machines with respect to the strategy that they implement has almost never been studied. This paper provides an unusual introduction to abstract machines, based on the complexity of their overhead with respect to the length of the implemented strategies. It is conceived to be a tutorial, focusing on the case study of implementing the weak head (call-by-name) strategy, and yet it is an original re-elaboration of known results. Moreover, some of the observation contained here never appeared in print before.

Original languageEnglish
Pages (from-to)1-15
Number of pages15
JournalElectronic Proceedings in Theoretical Computer Science, EPTCS
Volume235
DOIs
Publication statusPublished - 1 Jan 2017
Event3rd International Workshop on Rewriting Techniques for Program Transformations and Evaluation, WPTE 2016 - Porto, Portugal
Duration: 23 Jun 2016 → …

Fingerprint

Dive into the research topics of 'The complexity of abstract machines'. Together they form a unique fingerprint.

Cite this