I rate Compiler Construction: Principles and Practice to the same category as legendary Kernighan/Ritchie C Programming Language, Petzold's Programming Windows or Richter's Programming Server Side Applications for MS Windows 2000. This is one of the best books I have ever read.
Compiler construction is relatively hard topic with lot of theory needed to be understood before you can write even the most trivial compiler. Regular expressions, finite automata, BNF or attribute grammars are just few things you need to know and known them very well before you can write you own compiler.
Many books paying too much attention to theory, but theory itself without many practical examples is nearly useless - especially if you are new in this field. You need examples, very good, thoroughly explained examples and even better source code where theory is transformed into practice. This is something that the book does and does it very well.
Every topic is covered by such examples and at the end of every chapter there is practical implementation of scanner, parser (recursive descent), semantic analyzer and code generator in 'raw' C, using very simple (but useful) language called TINY.
Another great thing is how the book is organized. First chapter introduces major steps in compiler design like scanning, parsing, semantic, runtime environment, code generation and subsequent chapters dealing with these topics. That's great, because after finishing each chapter you can write your own scanner (chapter 2), top down parser (chapter 4), bottom up parser (chapter 5), semantic analyzer (chapter 6) and runtime environment and code generation (last 2 chapters).
Probably the best 'proof' how great this book is, is the fact that I as an absolute beginner in compiler construction (I have been working professionally as developer for 10 years), was able to write down my own scanner, parser (LL(1), LR(1), and also LALR(1)), semantic analyzer and code generator to 0x86 MASM ASSEMBLER in 'raw' C#, without using of any automatic generators like Lex or Yacc for simple C- language presented in the book (language has global and local variables, procedures, simple arrays and strings).
Compiler Construction: Principles and Practice is the best book for everyone who has no previous experience with compiler construction. Book doesn't cover all advanced topics but it's the best material for those ones who are new in this field. After finishing book you will have enough theoretical and practical experiences to move to more advanced books (but also much more difficult to grasp) like famous Dragon book.
Compiler Construction: Principles and Practice 1st Edition
by
Kenneth C. Louden
(Author)
| Kenneth C. Louden (Author) Find all the books, read about the author, and more. See search results for this author |
ISBN-13: 978-0534939724
ISBN-10: 0534939724
Why is ISBN important? ISBN
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Use the Amazon App to scan ISBNs and compare prices.
Add to book club
Loading your book clubs
There was a problem loading your book clubs. Please try again.
Not in a club? Learn more
Join or create book clubs
Choose books together
Track your books
Bring your club to Amazon Book Clubs, start a new book club and invite your friends to join, or find a club that’s right for you for free.
Due Date: May 25, 2022 Rental Details
- FREE return shipping at the end of the semester.
- Access codes and supplements are not guaranteed with rentals.
In Stock. Rented from RentU , Fulfilled by Amazon
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and .
If you're a seller, Fulfillment by Amazon can help you grow your business. Learn more about the program.
- List Price: $170.95
- Save:$98.95(58%)
FREE delivery Sunday, February 13
Or fastest delivery Friday, February 11. Order within 14 hrs
Only 1 left in stock - order soon.
Compiler Construction: Principles and Practice features a comprehensive, hands-on case study project for constructing an actual, working compiler.
Customers who viewed this item also viewed
Page 1 of 1 Start overPage 1 of 1
Customers who bought this item also bought
Page 1 of 1 Start overPage 1 of 1
Editorial Reviews
About the Author
Kenneth C. Louden is Emeritus Professor of Computer Science and a past chair of the Department of Computer Science at San Jose State University, Silicon Valley's primary supplier of graduates to the tech industry. He has written several texts and articles on advanced topics in computer science.
Tell the Publisher!
I'd like to read this book on Kindle
Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
I'd like to read this book on Kindle
Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Product details
- Publisher : Cengage Learning; 1st edition (January 24, 1997)
- Language : English
- Hardcover : 592 pages
- ISBN-10 : 0534939724
- ISBN-13 : 978-0534939724
- Item Weight : 2.2 pounds
- Dimensions : 7.38 x 1.34 x 9.25 inches
- Best Sellers Rank: #1,222,945 in Books (See Top 100 in Books)
- #96 in Compiler Design
- #264 in Software Programming Compilers
- #5,841 in Computer Software (Books)
- Customer Reviews:
About the author
Follow authors to get new release updates, plus improved recommendations.

Discover more of the author’s books, see similar authors, read author blogs and more
Customer reviews
4.6 out of 5 stars
4.6 out of 5
29 global ratings
How are ratings calculated?
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzes reviews to verify trustworthiness.
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
Reviewed in the United States on July 13, 2011
Verified Purchase
20 people found this helpful
Report abuse
Reviewed in the United States on May 11, 2014
Verified Purchase
This book goes through the front-end and middle-end of compiler construction, though not so much on the back-end. It serves as a great introductory material on parsing methods, however it dismisses some more modern techniques onto its "references" section at the end of the chapter. As such, this book comes across as an introductory book, despite what its title suggests.
I would thereby caution the prospective compiler writer/student looking to study compiler construction in-depth to avoid this book. Nevertheless I was quite pleased with the book because it presents the front and middle ends of compiler construction in a clear and concise way. Furthermore, it contains excerpts of code that implement a working compiler for a 'theoretical' language and a theoretical architecture (albeit in text. Unofficial code is available on github though). Which is surprising despite the lack of coverage on subjects like register allocation, dataflow analysis, etc.
Tl;Dr, if you're looking for an introductory compiler book, without the complexities of back-end compiler construction, I recommend one to get this. Otherwise, either get the Dragon book or eingeering a compiler. This book wouldn't satisfy the adventurous compiler writer/student.
I would thereby caution the prospective compiler writer/student looking to study compiler construction in-depth to avoid this book. Nevertheless I was quite pleased with the book because it presents the front and middle ends of compiler construction in a clear and concise way. Furthermore, it contains excerpts of code that implement a working compiler for a 'theoretical' language and a theoretical architecture (albeit in text. Unofficial code is available on github though). Which is surprising despite the lack of coverage on subjects like register allocation, dataflow analysis, etc.
Tl;Dr, if you're looking for an introductory compiler book, without the complexities of back-end compiler construction, I recommend one to get this. Otherwise, either get the Dragon book or eingeering a compiler. This book wouldn't satisfy the adventurous compiler writer/student.
5 people found this helpful
Report abuse
Reviewed in the United States on June 9, 2015
Verified Purchase
This was a book I purchased for class. Now that I have a better understanding I would like to go back and re-read this book. I think it skips some steps and does not show you how to build a compiler from the ground up. But it is still a great resource if you ever wanted to make your own compiler.
Reviewed in the United States on August 4, 2018
Verified Purchase
Has source code in back. Has a website you can download the source. Explains each part well. Felt confident about building a compiler after reading!!! The comp in this book uses structs for nearly all of it. Glad I found this one.
One person found this helpful
Report abuse
Reviewed in the United States on April 30, 2013
Verified Purchase
Compilers are a complicated subject, thankfully the lecturer in college in charge of the course used this book that explains the subject carefully and with many examples and appropriate diagramas. I have contacted the author and the editorial regarding a digital edition of the book, hopefully we will see it soon. Amazing book.
Reviewed in the United States on November 3, 2006
Verified Purchase
This is the best compiler book I have read. I have gone through 4 different compiler books. All have clear problems. This one is totally different, it is easy to read and understand. Furthermore, it is full of examples and come with solution manual for instructors. IMHO, it is the most suitable textbook for an introductory course in compilers.
3 people found this helpful
Report abuse
Reviewed in the United States on January 24, 2016
Verified Purchase
One of the best and more real hands-on books on compiler construction.
Reviewed in the United States on December 23, 2016
Verified Purchase
service was fast this is a really good book on compilers
Top reviews from other countries
ducky
4.0 out of 5 stars
Very heavy subject and not for the faint hearted. ...
Reviewed in the United Kingdom on May 5, 2018Verified Purchase
Very heavy subject and not for the faint hearted. Compiler design is a very complex subject however many of the principles on compiler design can be used for other areas of software development. Abstract Data Trees in particular Alison with parsing techniques are well worth understanding. I read about a third of the book many many times and found it very interesting. I have read so many books on software development however the last half of this book is tough and I moved on to researching chemistry instead.
One person found this helpful
Report abuse
Vilibald W.
5.0 out of 5 stars
Great quick intro with practical examples in C
Reviewed in the United Kingdom on March 24, 2014Verified Purchase
If you know very little about compiler construction than this book is a good one to start with, although dated the basic principles haven't changed in last 30+ years so everything you learn in this book is still valid. All the basic principles are discussed, lexical analysis including work with lex/flex, syntax analysis with the appropriate CF grammar theory, LL and LR parsers including usage of parser generator yacc/bison, semantic analysis like type checking, organization of run-time environments and basic code generation. There is very little about garbage collection or compiler optimizations but these are bit more advanced topics anyway. Very useful is the real implementation of a compiler of a tiny language in C, source code included, for a virtual machine called tiny machine, which is a limited computer with few registers. Over all great introductory text, which is not enough by itself but the topic is so huge that none of the books are covering everything.












