Programming Languages and Systems

Volume 7792 of the series Lecture Notes in Computer Science pp 21-40

The Compiler Forest

  • Mihai BudiuAffiliated withMicrosoft Research
  • , Joel GalensonAffiliated withMicrosoft ResearchUniversity of California
  • , Gordon D. PlotkinAffiliated withMicrosoft ResearchUniversity of Edinburgh

* Final gross prices may vary according to local VAT.

Get Access


We address the problem of writing compilers targeting complex execution environments, such as computer clusters composed of machines with multi-core CPUs. To that end we introduce partial compilers. These compilers can pass sub-programs to several child (partial) compilers, combining the code generated by their children to generate the final target code. We define a set of high-level polymorphic operations manipulating both compilers and partial compilers as first-class values. These mechanisms provide a software architecture for modular compiler construction. This allows the building of a forest of compilers, providing a structured treatment of multistage compilers.