Crafting a Compiler (1988)

by Charles N Fischer, Richard J LeBlanc, Jr