TY - BOOK
T1 - Compiler design
T2 - Analysis and transformation
AU - Seidl, Helmut
AU - Wilhelm, Reinhard
AU - Hack, Sebastian
N1 - Publisher Copyright:
© Springer-Verlag Berlin Heidelberg 2012. All rights are reserved.
PY - 2013/11/1
Y1 - 2013/11/1
N2 - While compilers for high-level programming languages are large complex software systems, they have particular characteristics that differentiate them from other software systems. Their functionality is almost completely well-defined - ideally there exist complete precise descriptions of the source and target languages. Additional descriptions of the interfaces to the operating system, programming system and programming environment, and to other compilers and libraries are often available. The book deals with the optimization phase of compilers. In this phase, programs are transformed in order to increase their efficiency. To preserve the semantics of the programs in these transformations, the compiler has to meet the associated applicability conditions. These are checked using static analysis of the programs. In this book the authors systematically describe the analysis and transformation of imperative and functional programs. 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. This book is intended for students of computer science. The book is supported throughout with examples, exercises and program fragments.
AB - While compilers for high-level programming languages are large complex software systems, they have particular characteristics that differentiate them from other software systems. Their functionality is almost completely well-defined - ideally there exist complete precise descriptions of the source and target languages. Additional descriptions of the interfaces to the operating system, programming system and programming environment, and to other compilers and libraries are often available. The book deals with the optimization phase of compilers. In this phase, programs are transformed in order to increase their efficiency. To preserve the semantics of the programs in these transformations, the compiler has to meet the associated applicability conditions. These are checked using static analysis of the programs. In this book the authors systematically describe the analysis and transformation of imperative and functional programs. 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. This book is intended for students of computer science. The book is supported throughout with examples, exercises and program fragments.
UR - http://www.scopus.com/inward/record.url?scp=84929023885&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-17548-0
DO - 10.1007/978-3-642-17548-0
M3 - Book
AN - SCOPUS:84929023885
SN - 3642175473
SN - 9783642175473
VL - 9783642175480
BT - Compiler design
PB - Springer-Verlag Berlin Heidelberg
ER -