Compiling
Christopher T. Haynes · 1997
Traditional compilation courses use formal methods for parsing, but treat the more important semantic aspects informally. We present a one semester course in which compiler development is reduced to a number of transformation steps, each of which is formally specified, easily tested, and clearly motivated by semantic considerations. The source language is substantial (essentially the host language of the compiler) and the target is a popular RISC architecture.