Goodreads helps you keep track of books you want to read.
Start by marking “Compilers: Principles, Techniques, and Tools” as Want to Read:
Compilers: Principles, Techniques, and Tools
Enlarge cover
Rate this book
Clear rating
Open Preview

Compilers: Principles, Techniques, and Tools

4.06  ·  Rating details ·  2,326 Ratings  ·  46 Reviews
Compilers: Principles, Techniques and Tools, known to professors, students, and developers worldwide as the "Dragon Book," is available in a new edition. Every chapter has been completely revised to reflect developments in software engineering, programming languages, and computer architecture that have occurred since 1986, when the last edition published. The authors, reco ...more
Hardcover, Second Edition, 1009 pages
Published August 1st 2006 by Addison Wesley (first published 1986)
More Details... edit details

Friend Reviews

To see what your friends thought of this book, please sign up.

Community Reviews

(showing 1-30)
filter  |  sort: default (?)  |  Rating Details
Ben Haley
Sep 07, 2009 rated it really liked it  ·  review of another edition
The notorious dragon book shows us the manifold concerns surrounding the translation of high-level programming languages down to the binary codes palatable by machine hardware. Where computer organization and design showed the rock bottom of computing, Aho has built a submarine necessary to descending to those depths. This allegorical submarine is old and sometimes creaky, but its iron hull shows no sign of breaking up despite the rapid changes happening on the surface.
There are certain books that everyone (in a relevant technical field) knows. Baby Rudin, CLR, Patterson-Hennessy, Golub and Van Loan, and Kernighan and Ritchie are all fine examples. The Dragon Book is another fine example, despite this odd reputation it has for being too dryly theoretical. We used it when I took compilers, and I've used it as a reference for myself when working on or teaching about compilers and interpreters. When I taught compilers, we used Appel's Modern Compiler Implementati ...more
Mar 05, 2011 rated it it was amazing  ·  review of another edition
Shelves: tech, own
Meat and potatoes for any aspiring software engineer.

Despite its age, this book still gives a fairly solid understanding of parser, compiler and optimisation techniques.
Its pretty dry, and heavy reading, but it shows you techniques you'll still be referring back to years later
James Dixson
Feb 24, 2011 rated it really liked it  ·  review of another edition
I have in fact read this book cover to cover. The modeling of Regex parsing in terms of language is among the most fundamental insights and transformative in my understanding of computer systems.
Jie Fu
Jun 17, 2014 rated it really liked it  ·  review of another edition
I read this classic book years ago for preparing for GRE Subtest
Chandan Khatwani
Great book for detailed explanation of compilers
This review has been hidden because it contains spoilers. To view it, click here.
The renowned Dragon-Book. I'm happy to own the original 1986 edition with the red dragon and the knight on its cover. The cover of the newer edition (2006) is pretty dull.

I read this as part of my studies in computer-science way back when. Some people might tell you it's rather theoretical, but I don't think so. It has sparked my interest in compiler construction, formal languages and more. This interest never left me, so you can say this book was kind of a life changing read.

Update Dec.21 2014
Koen Crolla
Damned boring. The Dragon Book is one of those ones that shows up on everyone's Top \d+ CS/Dev Books list, but it's one of the ones that are there because you're supposed to be impressed with the implication that the list-maker got all the way through it, not because it's genuinely great.
It has all the information you need to write a functioning compiler for almost any kind of language you'd want to write a compiler for,† it just lays that information out in the dullest, most laborious way possi
Dec 20, 2015 rated it it was ok  ·  review of another edition
Follow along textbook for Coursera Stanford Compilers class. Definitely useful to have to flesh out details left out of lecture videos. Not necessary for doing the programming assignments.

Mediocre as a textbook. Content is fine, maybe even too many examples, but typesetting makes the text more difficult to read. Sections and terms are referenced before their definitions. Key definitions are italicized rather than bolded and indented making them hard to find. The authors instead chose to bold pro
Jun 10, 2014 rated it really liked it  ·  review of another edition
This is probably a 5 star book but I will admit it was over my head so I probably will appreciate it more as I grow in compiler knowledge. It's very definitive and many scholars point to this book. You need some basic prerequisite math and programming to understand this. I viewed it as a great overview of a subject I knew little about. I skipped a lot, used youtube when the water was to deep and glossed over a lot of details. This is a good reference to buy and keep on your shelf. Its to heavy t ...more
Alessandro Pellizzari
Il primo capitolo è un'ottima introduzione alla scrittura di interpreti e compilatori, con relative grammatiche. Molto lineare e comprensibile.

Quando inizia a entrare nei dettagli diventa velocemente incomprensibile, passando a un linguaggio troppo strettamente matematico anche per concetti che sono molto più semplici da spiegare in "linguaggio umano" (come è riuscito a fare nel primo capitolo...)

Capisco la necessità di usare formalismi accademici, ma non aiuta molti a comprendere.
Scott King
Nov 23, 2012 rated it it was amazing  ·  review of another edition
I took "Compilers", otherwise known as CS444, at the University of Waterloo over 20 years ago. What a fantastic course and a fantastic book! We worked in teams of 3 or 4 and developed a full-fledged compiler in one frantic term. I remember the sleepless nights (literally) leading up to the deadline, staying up probably 72 hours straight to get the last few bugs out. But it worked! The book was excellent and helped us all figure out what to do.
Mike Vollmer
Jul 17, 2013 rated it it was amazing  ·  review of another edition
Shelves: compsci
This is the definitive compilers text. Just mention "The Dragon Book" to any computer scientist and they will instantly know you're referring to this legendary book. It's not easy reading, but it does everything a good, advanced textbook or reference book should do: it is succinct, complete, and holds no punches.
Jul 26, 2014 rated it it was amazing  ·  review of another edition
Not necessarily the easiest book to read, but a good treatment of compiler and optimiser design. Although the (computer) language is dated, and there are other books that deal with more modern languages, nevertheless this gives a good foundation for understanding the issues and algorithms involved in developing programs to parse languages.
May 10, 2013 rated it really liked it  ·  review of another edition
I was worried that this book would be entirely over my head, but in fact, it's very clearly written and easy to follow. The section of data flow analysis in service of optimization gets a little bit dense, though.
Aug 16, 2012 rated it it was amazing  ·  review of another edition
The Dragon Book - a classic! This was the text book for my "Compiler Theory" class in college (many many years ago!). This was the text book from which I learned how to use a finite state machine to compile a language given its grammar.
Zachary Marsden
Jul 12, 2013 rated it really liked it  ·  review of another edition
Did not read the new chapters on optimization (read the rest of the book however). Helped clear up some things when I took Compilers in college. I feel that Louden's book is significantly better for the beginner though.
Jeremy Frens
This is easily the most overrated textbook. In any discipline. Get Engineering a Compiler instead.
Jeremy West
Apr 21, 2016 rated it really liked it
Made it through the fundamental chapters related to my intro to compilers course: scanning, parsing, type checking, and code generation. Seems to be a great resource, much better than the text assigned by the Professor. The examples and algorithms were helpful in understanding the core concepts.
Max Perepelitsyn
Feb 04, 2015 rated it it was amazing
Great classic compiler textbook. Though I think it serves much better if it's not the first compiler book for the reader and/or the reader has some experience in the field.
Alexis Petrounias
Do not use as an introductory book to compiler construction.
Dwight Walker
computer software compiler logic and creation - important for porting software from one platform to another for software engineers - a classic text from university computer science courses
Darrell Ulm
Jun 04, 2015 rated it it was amazing  ·  review of another edition
One of the best books to describe concepts and algorithms for compilers, data-structures and optimizations.
Dec 31, 2012 marked it as to-read  ·  review of another edition
Shelves: inner-nerd
I think that this will be one of my next reads since the reviews for this book look great.
Alexander Ptakhin
Apr 28, 2014 rated it liked it  ·  review of another edition
Shelves: prog
Basis for compiler mammonths. TL DR. Return to 9 chapter.
Oct 31, 2013 rated it really liked it  ·  review of another edition
Shelves: technology
Read this book long time back. Good book to understand compiler internals and code optimizations that happen under the hood.
Apr 28, 2011 rated it it was amazing  ·  review of another edition
El famoso "libro del dragón". Uno de los libros que sin duda cambió por completo mi forma de pensar en informática, y no sólo en términos del diseño y la implementación de compiladores.
Jerry Hilts
Mar 11, 2016 rated it really liked it  ·  review of another edition
Rick Eversole
Feb 18, 2016 rated it really liked it  ·  review of another edition
Must have reference work for computer programmers who want to work on compilers or interpreters.
« previous 1 3 4 5 6 7 8 9 next »
There are no discussion topics on this book yet. Be the first to start one »
  • Modern Operating Systems
  • Types and Programming Languages
  • The Art of Computer Programming, Volumes 1-3 Boxed Set
  • Purely Functional Data Structures
  • Programming Pearls
  • Programming Language Pragmatics
  • Concepts, Techniques, and Models of Computer Programming
  • Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
  • Engineering a Compiler
  • Advanced Programming in the UNIX Environment
  • Introduction to Algorithms
  • The Little Schemer
  • On Lisp: Advanced Techniques for Common Lisp
  • Paradigms of Artificial Intelligence Programming: Case Studies in Common LISP
  • Artificial Intelligence: A Modern Approach
  • Real World Haskell: Code You Can Believe In
  • The C++ Programming Language
  • Concrete Mathematics: A Foundation for Computer Science

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »

Share This Book