Compiler Design: Analysis and Transformation
From the reviews:“German academics … provide a concise, compact presentation on ‘methods to improve the efficiency of target programs by a compiler,’ i.e., a compiler’s optimizing phase. … The authors provide a wealth of information on analysis along with specific illustrations. … The authors walk through many of their examples with reference to various languages (such as Java). Since this book is aimed at students, it includes exercises at the end of each chapter. … Summing Up: Recommended. Upper-division undergraduates and graduate students.” (M. B. DuBois, Choice, Vol. 50 (10), June, 2013)“The authors bring together many of the results from the last few decades in a coherent and detailed manner, and the result is an excellent resource for those wanting to understand some of the complex issues in building realistic, industrial-strength compilers. … The authors provide motivation and definitions for many of the concepts in static analysis, and illustrate these ideas through example programs that can be optimized.” (Sara Kalvala, Computing Reviews, April, 2013)“This is a nice book on intraprocedural analysis for imperative languages, with short outings into interprocedural analysis, and analysis of functional languages. The book looks nice, reads well and provides good intuitions, and, importantly, also provides details on the transformation of programs. … It introduces the necessary preliminaries along the way as they arise … which gives the book a better flow when reading. Finally, it is also graphically very pleasing to look at.” (Juriaan Hage, Zentralblatt MATH, Vol. 1257, 2013)