Programming Books C Java PHP Python Learn more Browse Programming Books

Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 


or
Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $54.42 Gift Card
Trade in
Kindle Edition
Read instantly on your iPad, PC, Mac, Android tablet or Kindle Fire
Buy Price: $120.12
 
 
   
More Buying Choices
Have one to sell? Sell yours here

Compilers: Principles, Techniques, and Tools (2nd Edition) [Hardcover]

by Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman
4.1 out of 5 stars  See all reviews (83 customer reviews)

Buy New
$137.75 & FREE Shipping. Details
Rent
$47.65 & FREE Shipping. Details
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
In Stock.
Rented by RentU and Fulfilled by Amazon.
Want it Monday, April 28? Choose Two-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Formats

Amazon Price New from Used from
Kindle Edition $120.12  
Hardcover $137.75  
Paperback --  
Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Book Description

September 10, 2006 0321486811 978-0321486813 2nd
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, recognizing that few readers will ever go on to construct a compiler, retain their focus on the broader set of problems faced in software design and software development.

Frequently Bought Together

Compilers: Principles, Techniques, and Tools (2nd Edition) + Engineering a Compiler, Second Edition + Programming Language Pragmatics, Third Edition
Price for all three: $279.95

Buy the selected items together

Customers Who Bought This Item Also Bought


Editorial Reviews

About the Author

Alfred V. Aho is Lawrence Gussman Professor of Computer Science at Columbia University. Professor Aho has won several awards including the Great Teacher Award for 2003 from the Society of Columbia Graduates and the IEEE John von Neumann Medal.  He is a member of the National Academy of Engineering and a fellow of the ACM and IEEE.

 

Monica S. Lam is a Professor of Computer Science at Stanford University, was the Chief Scientist at Tensilica and the founding CEO of moka5. She led the SUIF project which produced one of the most popular research compilers, and pioneered numerous compiler techniques used in industry.

 

Ravi Sethi launched the research organization in Avaya and is president of Avaya Labs.  Previously, he was a senior vice president at Bell Labs in Murray Hill and chief technical officer for communications software at Lucent Technologies. He has held teaching positions at the Pennsylvania State University and the University of Arizona, and has taught at Princeton University and Rutgers.  He is a fellow of the ACM.

 

Jeffrey Ullman is CEO of Gradiance and a Stanford W. Ascherman Professor of Computer Science at Stanford University. His research interests include database theory, database integration, data mining, and education using the information infrastructure.  He is a member of the National Academy of Engineering, a fellow of the ACM, and winner of the Karlstrom Award and Knuth Prize.

 


Product Details

  • Hardcover: 1000 pages
  • Publisher: Addison Wesley; 2nd edition (September 10, 2006)
  • Language: English
  • ISBN-10: 0321486811
  • ISBN-13: 978-0321486813
  • Product Dimensions: 9.3 x 6.7 x 1.6 inches
  • Shipping Weight: 2.6 pounds (View shipping rates and policies)
  • Average Customer Review: 4.1 out of 5 stars  See all reviews (83 customer reviews)
  • Amazon Best Sellers Rank: #232,485 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Most Helpful Customer Reviews
149 of 160 people found the following review helpful
3.0 out of 5 stars Warmed over ghost of past excellence May 18, 2007
Format:Hardcover
I spent some serious quality time with the first edition (the "red dragon book"), in three main episodes over the past dozen years: 1) undergraduate compilers class, 2) industry project, and 3) parser generator implementation. During all three episodes, I was disappointed in various ways, though there is no denying that the book contains a wealth of information. As an undergraduate, I found the book somewhat impenetrable. When in industry, I found the book too abstract. When implementing a parser generator, I discovered that the book excludes important research results with regard to LR parser generation. It is the last disappointment that I will focus on.

The book presents parser generation in layers of increasing complexity, from SLR to LR to LALR, where LALR is presented as the penultimate algorithm, though LALR parsers can only handle a subset of the grammars that LR can handle. The justification for this is that the original Knuth LR algorithm is intractable for large grammars. However, an efficient, fully correct, approach for LR parser generation was published in 1977, and on top of that it appears easier to implement than efficient LALR parser generation! The red dragon book's original authors simply cannot have been unaware of this research result, but I suspect that they elected to warm over the "green dragon book" (published in 1977) rather than incorporate the state of the art as of 1986 into the "red dragon book". Now here we are another 20 years later, and as near as I can tell from reading through available online information, the "purple dragon book" is perpetuating this omission. The result of the red dragon book is that we have an entire generation of computer scientists who have been mislead to think that LALR is somehow superior to LR, and the purple dragon book is setting things up for yet another generation to be mislead.
Was this review helpful to you?
60 of 62 people found the following review helpful
Format:Hardcover
During each compiler stage (lexical analysis, syntax analysis, translation, type checking, translation, code generation, and code optimization) multiple methods, strategies, and algorithms are presented. This comprehensive book examines items that are unique to the various languages presented (Fortran, C, and Pascal); there are even sections on dealing with estimation of types (10.12) and symbolic debugging of optimized code (10.13). Wow! The exercises are thorough, challenging, and thought provoking. Examples are interleaved with the discussion and algorithms. There is an excellent set of historical and bibliographic information at the end of each chapter. The use of automated tools such as lex, yacc, and compiler-generators is discussed throughout the text. This is an advanced book, however a good understanding of compilers can be obtained without understanding the details of every algorithm.
Comment | 
Was this review helpful to you?
49 of 51 people found the following review helpful
2.0 out of 5 stars DO NOT BUY the kindle version - many errors! January 13, 2012
Format:Kindle Edition|Verified Purchase
Aho, Ullman et. al's "Compilers" is a fantastic book and well worth studying for all computer programmers - implementing a compiler compiler will yield tangental benefits to anyone who writes programs for a living or for fun.

However, the Amazon Kindle edition of this book is *awful*. First and foremost, I discovered at least one error in an algorithm that is not present in the standard edition that causes the book's proposed algorithms to be incorrect (in this case, it was algorithm 4.31 - in step 1, you should compute FIRST(alpha), not FIRST(A).)

On top of that, there are spacing issues and font issues throughout the book. It appears that in many places where the standard edition had a word separated across lines, the Kindle edition merely has that word split in two with a space between its halves. Worse, the font choice used to typeset algorithms doesn't easily distinguish many greek lowercase letters from their modern English equivalents, the result being that it is fiendishly difficult to understand some algorithms (the book uses greek letters to indicate a 'sentential form', so they appear a *lot* and tend to be right next to their modern equivalents.)

In other words, I would give Compilers (the Standard edition) a 5/5 (or maybe a 4/5 - it could stand to use a bit more real-world code), but this Kindle edition is rubbish and you SHOULD NOT BUY.
Was this review helpful to you?
94 of 104 people found the following review helpful
5.0 out of 5 stars The reference book ... depending on your needs April 19, 2002
Format:Hardcover
Once again, I want to point out the title of the book: "Principles, Techniques and Tools".
I think there are two kinds of compilers books available today: "Principles and Theory centered" ones and "Modern Compilers design and implementation" ones.
One might wonder what's the difference between the two.
The former kind is more suited for a course on theoretical aspects that lay the foundation of compiler construction. DFAs, NFAs and Regular expression along with relations and equivalence between the them; FSAs minimizations; grammars and Push-down FSAs in details, ambiguities and and how to cope with them; and so on.
This is what I mean for "theoretical aspects". And these topics are covered in great details in this book. Almost the same details they (the authors) placed on writing a more specific book as "Introduction to Automata Theory ...".
Same situation applies to principles on more application- oriented topics. Take the example of LR parsing. You can face the topic from a more theoretical side, dealing with details on bottom up parsing (still, it implies an in-depth knowledge of grammars theory), handles and (viable) prefixes, SLR or canonical LR or LALR parsers and techniques for the relative tables construction by hands (and for this, add a detailed and solid knowledge of Push-down FSAs along with grammars). By hands, at least, if principles are what matter in your course.
If you expect to find these topics (with this depth) in a book of the other kind, you might get mislead. As I did when I still had not clear this distinction, before I took the course.
The latter kind of books is more suited for a more pragmatic course.
Read more ›
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars must have for learning parsing
this is an old text book, revised and updated with new knowledge, but with it you will see that the core of parsing is still the same rules applied in the past... Read more
Published 2 months ago by Gabriel Wernersbach Farinas
5.0 out of 5 stars It is good book to read
Yes, it is good to read the book to learn the components designed for compilers principles and theoretical practice rules.
Published 3 months ago by Jian Kang
5.0 out of 5 stars Brings back old memories
It's 2013 and a week away from 2014. Took my class for my Masters Degree in Computer Science back in 1996, and we used this book. Brings back the good old memories :).
Published 4 months ago by S. Solomon
5.0 out of 5 stars Excellent!
For the price, the book was in excellent condition(I bought a used copy, so the experience might vary). Read more
Published 4 months ago by Yasaswy Kasarabada
4.0 out of 5 stars so so
ok but dated. I bought it for the lex and yacc examples and simple compiler ideas on embedding a very small language into an ARM m4 product.
Published 5 months ago by Mister Ed
5.0 out of 5 stars Everything you wanted to know about compilers
Classic. I used this book in college and covered it entirely. I had to have a copy of it and it's still one of the best textbooks I had/have.
Published 5 months ago by fmcf
5.0 out of 5 stars nice book,very good. I like it very much.
I got it for a while.nice book,very good. I like it very much. The books looks very new, and perfect.
Published 7 months ago by yanliang
5.0 out of 5 stars If you do not already have this, you should get it.
This is just one of those all-programmers-should-have kind of books. The principles taught herein are universally used throughout the computer science world. Read more
Published 9 months ago by Azfar M. Khandoker
5.0 out of 5 stars A plus
Thanks to that book (almost as old as myself) I'v managed to pass my "compiladors" subject comfortably for a very reasonable price. Read more
Published 9 months ago by Adrià R.
5.0 out of 5 stars Great Reference
Contains a fair amount of abstract mathematics in order to explain different algorithms for compilers. Read more
Published 12 months ago by Himanshu Narayana
Search Customer Reviews
Only search this product's reviews
ARRAY(0x9f496084)

What Other Items Do Customers Buy After Viewing This Item?


Forums

Search Customer Discussions
Search all Amazon discussions

Topic From this Discussion
Output from Example 1.7/Figure 1.12
I think you are absolutely correct. Seems the authors forgot the +1 part of the macro definition. I was going to send this comment to the publisher, but couldn't figure how ...
Jun 18, 2007 by D. McPherson |  See all 2 posts
Differences between this and the older edition (?) Be the first to reply
So, it's Aug 31st, 2006 today. Where's the book? Be the first to reply
Start a new discussion
Topic:
First post:
Prompts for sign-in
 




Look for Similar Items by Category