Upper-division undergraduates and graduate students.” (M. Since this book is aimed at students, it includes exercises at the end of each chapter. … The authors walk through many of their examples with reference to various languages (such as Java). … The authors provide a wealth of information on analysis along with specific illustrations. “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 book is supported throughout with examples, exercises and program fragments. This book is intended for students of computer science. In addition to a detailed description of important efficiency-improving transformations, the book offers a concise introduction to the necessary concepts and methods, namely to operational semantics, lattices, and fixed-point algorithms. In this book the authors systematically describe the analysis and transformation of imperative and functional programs. These are checked using static analysis of the programs. To preserve the semantics of the programs in these transformations, the compiler has to meet the associated applicability conditions. In this phase, programs are transformed in order to increase their efficiency. The book deals with the optimization phase of compilers. Additional descriptions of the interfaces to the operating system, programming system and programming environment, and to other compilers and libraries are often available. Their functionality is almost completely well-defined - ideally there exist complete precise descriptions of the source and target languages.
#BOOKS ON COMPILER DESIGN SOFTWARE#
While compilers for high-level programming languages are large complex software systems, they have particular characteristics that differentiate them from other software systems.