Fifteen compilers in fifteen days

Jeremy D. Frens, Andrew Meneely. Fifteen compilers in fifteen days. In Doug Baldwin, Paul T. Tymann, Susan M. Haller, Ingrid Russell, editors, Proceedings of the 39th SIGCSE Technical Symposium on Computer Science Education, SIGCSE 2006, Houston, Texas, USA, March 3-5, 2006. pages 92-96, ACM, 2006. [doi]

Abstract

Traditional approaches to semester-long projects in compiler courses force students to implement the early stages of a compiler in depth; since many students fall behind, they have little opportunity to implement the back end. Consequently, students have a deep knowledge of early material and no knowledge of latter material. We propose an approach based on incremental development and test-driven development; this approach solves the emphasis problem, provides experience with useful tools, and allows for such a course to be taught in a three or four weeks.