views:

262

answers:

5
+3  Q: 

The Dragon Book

Is the Dragon book a good introductory textbook for a compiler class? It seems to be famous, and our professor likes it, but it's not one of the textbooks that we use.

+2  A: 

When I myself searched for information on how to build a compiler, the Dragon book was indeed always cited as THE reference.

There is a free book by Niklaus Wirth, named "Compiler Construction".

EDIT: I found out after I answered but you should definitely refer to the Learning to write a compiler question for a list of resources.

And there is The Catalog Of Compiler Construction Tools.

Gregory Pakosz
"Compiler Construction" by Wirth is one of the textbooks we use for our class.
Phenom
+2  A: 

It is a good book, and a classic, and I would thoroughly recommend it. However, this assumes that by "compiler class" you mean "how to write a compiler" and were concentraing on theory. This requires intelligent and motivated students as it isn't the easiest subject in the world.

An "introduction to functional programming" book might also work well. If you had students who liked a more applied/practical example, a book about something like ANTLR might work well, eg:

http://pragprog.com/titles/tpantlr/the-definitive-antlr-reference

Nick Fortescue
Very well-said, Nick!
Chip Uni
+5  A: 

The Dragon book is the "War & Peace" of compilers. You can live without it, and you'll even have lots of spare time, but you'll always live wondering what you've missed.

Faruz
+1  A: 

Personally I would say no, though I haven't read the latest edition. I would prefer abook that concentrates on recursive descent compiling as the basis for an introductory course.

anon
can you explain that?
Nathan Feger
A: 

The dragon book, imo, would be very useful if you've got knowledge about automata theory but otherwise if would be more beneficial to understand compiler theory from the aspects of recursive descent compiling as what Neil Butterworth pointed out earlier.

Raymond Tay