International Andrei Ershov Memorial Conference on Perspectives of System Informatics

PSI 2011: Perspectives of Systems Informatics pp 125-141

Bootstrapping Compiler Generators from Partial Evaluators

  • Robert Glück
Conference paper

DOI: 10.1007/978-3-642-29709-0_13

Volume 7162 of the book series Lecture Notes in Computer Science (LNCS)
Cite this paper as:
Glück R. (2012) Bootstrapping Compiler Generators from Partial Evaluators. In: Clarke E., Virbitskaite I., Voronkov A. (eds) Perspectives of Systems Informatics. PSI 2011. Lecture Notes in Computer Science, vol 7162. Springer, Berlin, Heidelberg

Abstract

This paper shows that bootstrapping of compiler generators from program specializers is a viable alternative to the third Futamura projection. To practically validate the technique, a novel partial evaluation-based compiler generator was designed and implemented for a recursive flowchart language. Three-step bootstrapping was found to be faster and to produce the same compiler generator that Gomard and Jones produced two decades ago by double self-application. Compiler-generator bootstrapping has distinct properties that are not present in the classic three Futamura projections, such as the ability to turn a specializer into a compiler generator in one step without self-application. Up to now, the approach of hand-writing compiler generators has only been used to avoid difficulties when specializing strongly-typed languages, not as a first step towards compiler-generator bootstrapping.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Robert Glück
    • 1
  1. 1.DIKU, Dept. of Computer ScienceUniversity of CopenhagenDenmark