Listing 1 - 2 of 2 |
Sort by
|
Choose an application
This textbook is intended for an introductory course on Compiler Design, suitable for use in an undergraduate programme in computer science or related fields. Introduction to Compiler Design presents techniques for making realistic, though non-optimizing compilers for simple programming languages using methods that are close to those used in "real" compilers, albeit slightly simplified in places for presentation purposes. All phases required for translating a high-level language to machine language is covered, including lexing, parsing, intermediate-code generation, machine-code generation and register allocation. Interpretation is covered briefly. Aiming to be neutral with respect to implementation languages, algorithms are presented in pseudo-code rather than in any specific programming language, and suggestions for implementation in several different language flavors are in many cases given. The techniques are illustrated with examples and exercises. The author has taught Compiler Design at the University of Copenhagen for over a decade, and the book is based on material used in the undergraduate Compiler Design course there. Additional material for use with this book, including solutions to selected exercises, is available at http://www.diku.dk/~torbenm/ICD .
Compilers (Computer programs) -- Design. --- Compilers (Computer programs) --- Engineering & Applied Sciences --- Computer Science --- Design --- Design. --- Compiling programs (Computer programs) --- Computer science. --- Programming languages (Electronic computers). --- Computer Science. --- Programming Languages, Compilers, Interpreters. --- Computer programs --- Programming software --- Systems software --- Informatics --- Science --- Computer languages --- Computer program languages --- Computer programming languages --- Machine language --- Electronic data processing --- Languages, Artificial
Choose an application
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.
Compilers (Computer programs) -- Design. --- Compilers (Computer programs). --- Compilers (Computer programs) --- Engineering & Applied Sciences --- Computer Science --- Information Technology --- Computer Science (Hardware & Networks) --- Programming software. --- Compiling programs (Computer programs) --- Computer science. --- Computer programming. --- Programming languages (Electronic computers). --- Computer Science. --- Programming Techniques. --- Programming Languages, Compilers, Interpreters. --- Computer software --- Computer programs --- Programming software --- Systems software --- Informatics --- Science --- Computer languages --- Computer program languages --- Computer programming languages --- Machine language --- Electronic data processing --- Languages, Artificial --- Computers --- Electronic computer programming --- Electronic digital computers --- Programming (Electronic computers) --- Coding theory --- Programming
Listing 1 - 2 of 2 |
Sort by
|