Home
 
The JFP Page
Pearls Home
The Pearls
TeX Style

Educational Pearl: A Nanopass framework for compiler education

Dipanwita Sarkar, Oscar Waddell And R. Kent Dybvig

A compiler structured as a small number of monolithic passes is difficult to understand and difficult to maintain. The steep learning curve is daunting and even experienced developers find that modifying existing passes is difficult and often introduces subtle and tenacious bugs. These problems are especially frustrating when the developer is a student in a compiler class. An attractive alternative is to structure the compiler as a collection of many fine-grained passes, each of which performs a single task. This organization aligns the actual implementation of a compiler with its logical organization, simplifying development, testing, and debugging. This paper describes the methodology and tools comprising a framework for constructing such compilers.

last updated on Sat Jan 27 11:42:50 EST 2007generated with PLT Scheme