Jump to ratings and reviews
Rate this book

Advanced Compiler Design and Implementation

Rate this book

From the Foreword by Susan L. Graham:
This book takes on the challenges of contemporary languages and
architectures, and prepares the reader for the new compiling problems that
will inevitably arise in the future.

The definitive book on advanced compiler design
This comprehensive, up-to-date work examines advanced issues in the design
and implementation of compilers for modern processors. Written for
professionals and graduate students, the book guides readers in designing
and implementing efficient structures for highly optimizing compilers for
real-world languages. Covering advanced issues in fundamental areas of
compiler design, this book discusses a wide array of possible code
optimizations, determining the relative importance of optimizations, and
selecting the most effective methods of implementation.
* Lays the foundation for understanding the major issues of advanced
compiler design
* Treats optimization in-depth
* Uses four case studies of commercial compiling suites to illustrate
different approaches to compiler structure, intermediate-code design, and
optimization these include Sun Microsystems's compiler for SPARC, IBM's for
POWER and PowerPC, DEC's for Alpha, and Intel's for Pentium an related
processors
* Presents numerous clearly defined algorithms based on actual cases
* Introduces Informal Compiler Algorithm Notation (ICAN), a language devised
by the author to communicate algorithms effectively to people

888 pages, Hardcover

First published August 1, 1997

26 people are currently reading
505 people want to read

About the author

Steven S. Muchnick

1 book5 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
33 (35%)
4 stars
33 (35%)
3 stars
14 (15%)
2 stars
8 (8%)
1 star
4 (4%)
Displaying 1 - 6 of 6 reviews
Profile Image for Nick Black.
Author 2 books877 followers
December 26, 2008
One of the finest computer science textbooks I've ever read, and I've read hundreds. Muchnick is clearly a demigod who's made a fine study of humans so that he might walk amongst us, for reasons unknown to anyone but him. This has reignited my passion for compiler design, and I absolutely can't wait until CS6241 next semester with Santosh Pande, himself reputed to be a Great Master well worth understudy.

Required text for CS6241 (graduate compiler design), on the agenda for next semester. I've leafed through it before and been very impressed; I look forward to making a serious study of this one!
Profile Image for Gregory Blake.
36 reviews6 followers
August 14, 2016
Although Muchnick wrote Advanced Compiler Design and Implementation in 1997, he lays out such an excellent overview of the compilation process and delves into such extreme detail with dozens of useful optimizations that it would be remiss for a serious low-level developer's library to forget this book.

Muchnick targeted Master's or PhD level Computer Scientists when he wrote this book, and I hadn't been introduced to some math concepts that he used, such as lattices. A reader attempting to find a useful sequence for reading this book might want to include some topic in advanced mathematics prior to reading, although Muchnick stays light on the proofs and overall isn't as taxing to read for non-mathematical audiences as Knuth.

All of his algorithms are written in ICAN, which is a pseudo-language he invented that looks remarkably similar to ML or Haskell with iterative qualities. The text explanations of what the algorithms do are usually strong enough that a reader familiar with data structures can follow along without referencing the gory details in the code.

All in all, I highly recommend Muchnick as a follow-up to Appel's Modern Compiler Implementation in ML, as the other text will bring a less advanced reader up to speed for this book.
Profile Image for Irvi.
88 reviews7 followers
February 9, 2020
Strong fundamentals, however there’s plenty obsolete RISC architecture.
73 reviews4 followers
June 14, 2017
Strong on the theory and full of references to the contemporary literature. But contemporary here was quite a long time ago. So there's plenty on now obsolete RISC architectures, but nothing on the latest Intel and ARM ones, specifically concerning recent developments like out of order execution.

The ICAN notation is a bit annoying. It's a peculiar mix of script-like control flow ("do ... od"), also with lots of APL-like symbols. Generally I just skimmed the algorithms expressed in ICAN.
Profile Image for Akshay Deodhar.
33 reviews2 followers
January 16, 2023
Uses its own "invented" programming languages for expressing algorithms. Algorithms unclear. Probably the only book which is comprehensive in terms of classical compiler optimizations. Gave up. Try the Dragon Book (clearer) or Engineering a Compiler (easier)
Displaying 1 - 6 of 6 reviews

Can't find what you're looking for?

Get help and learn more about the design.