CS 152: Compiler Design - Books

Winter Quarter 2003: January 3, 2003 - March 14, 2003


Less: Notes Official Other   |   More: Books Downloads Policies Schedule Scores   |   Home

Notes

The links below take you to bestbookbuys.com, a comparison shopping service that I have found useful in the past. I am not affiliated with bestbookbuys.com and provide these links only as suggestions. You can buy books through numerous other venues as well. Note that amazon.com sometimes provides informative book reviews and possibly even sample pages. I suggest you try their service for these reasons, even if you choose not to buy from them.


Official Books

Author Title Comment
Andrew Appel Modern Compiler Implementation in Java

The most up-to-date and comprehensive compiler text currently available. We will not follow the book very closely, but it does provide alternative views and much deeper coverage of most topics. All examples are in Java, but editions using C or ML exist as well. Required!

Niklaus Wirth Compiler Construction

This little book is the most compact introduction to compiler construction I know. It covers all the essentials for this course (in some way) and also develops a complete compiler. Sadly, the book is currently out of print. All examples are in Oberon.


Other Books

Author Title Comment
Gamma, Helm, Johnson, Vlissides Design Patterns

The standard reference for design patterns: well-documented solutions to recurring design and implementation problems. We will use the Visitor pattern in the course, which is also explained in Appel's book.

Hunt, Thomas The Pragmatic Programmer

Lots of practical advice on programming and software development in general, e.g. how to organize your code, how to debug, how to test, etc. Similar in intent to the text by Kernighan and Pike, but quite a different approach.

Kernighan, Pike The Practice of Programming

Succinct discussion of a variety of programming topics. Deals with style, comments, design, testing, debugging, portability, etc. Uses several languages (C, C++, Java, Perl, ...) and discusses the tradeoffs involved. Similar in intent to the text by Hunt and Thomas, but quite a different approach.


Copyright © 2001-2003 Peter H. Fröhlich. All rights reserved.
$Id: books.html,v 1.5 2003/01/08 21:18:21 phf Exp $
Valid XHTML 1.1!