"Modern Compiler Design" makes the topic of compiler design more accessible by focusing on principles and techniques of wide application. By carefully distinguishing between the essential (material that has a high chance of being useful) and the incidental (material that will be of benefit only in exceptional cases) much useful information was packed in this comprehensive volume. The student who has finished this book can expect to understand the workings of and add to a language processor for each of the modern paradigms, and be able to read the literature on how to proceed. The first provides a firm basis, the second potential for growth.
Accessibility: everything is explained from basic principles without being simplistic Scope: compilation for all paradigms, imperative, object-oriented, functional, logic, and distributed/parallel Integrated and up-to-date treatment of lexical analysis, LALR and GLR parsing Legacy code: grammar recovery, disassembly, decompilation Embedded systems: code size reduction, code compression, power reduction Includes useful summaries of the salient points at the end of each chapter.
Dick Grune
Assemblers Attribute Grammars Code Generation Compilers Embedded Systems Functional Programming Interpreters Legacy Code Lexical Analysis Linkers Loaders Logic Programming Memory Management Optimization Parallel/Distributed Programming
From the reviews of the second edition:
“This large, updated new edition … provides excellent coverage of the design segment. The writing is clear and accessible; the material is well organized and complete; the references are extensive (over 300) and the student exercises are well conceived … . the essence of the book is the middle ground between the two: how compilers are structured and how the substructures of a compiler relate to one another. Summing Up: Recommended. Computer science collections, upper-division undergraduates and above.” (C. Vickery, Choice, Vol. 50 (6), February, 2013)