Keith Cooper — 作者 (4)
Engineering a Compiler (3/e) [图书] 豆瓣
作者: Keith Cooper / Linda Torczon publishing house: Morgan Kaufmann 2022 - 9
Engineering a Compiler, Third Edition is full of technical updates, new material covering the latest developments in compiler technology, and a fundamental change in the presentation of the middle section of the book, with new chapters focusing on semantic elaboration (the problems that arise in generating code from the ad-hoc syntax-directed translation schemes in a generated parser), on runtime support for naming and addressability, and on code shape for expressions, assignments, and control-structures. Leading educators and researchers Keith Cooper and Linda Torczon have revised their popular text with a fresh approach to learning important techniques for constructing a modern compiler, combining basic principles with pragmatic insights from their own experience building state-of-the-art compilers.
Key Features
- Presents in-depth treatment of algorithms and techniques used in the front end of a modern compiler
- Pays particular attention to code optimization and code generation, the primary areas of recent research and development
- New chapters in the middle section of the book focus on how compilers (and interpreters) implement abstraction, tying the underlying knowledge to students’ own experience and to the languages in which they have been taught to program
- Chapter 13 on register allocation has been fully re-written to focus on bottom-up methods of register allocation at the local scope
Engineering a Compiler [图书] 豆瓣 Goodreads
Engineering a Compiler
作者: Keith Cooper / Linda Torczon publishing house: Morgan Kaufmann 2003 - 11
The proliferation of processors, environments, and constraints on systems has cast compiler technology into a wider variety of settings, changing the compiler and compiler writer's role. No longer is execution speed the sole criterion for judging compiled code. Today, code might be judged on how small it is, how much power it consumes, how well it compresses, or how many page faults it generates. In this evolving environment, the task of building a successful compiler relies upon the compiler writer's ability to balance and blend algorithms, engineering insights, and careful planning. Today's compiler writer must choose a path through a design space that is filled with diverse alternatives, each with distinct costs, advantages, and complexities.
explores this design space by presenting some of the ways these problems have been solved, and the constraints that made each of those solutions attractive. By understanding the parameters of the problem and their impact on compiler design, the authors hope to convey both the depth of the problems and the breadth of possible solutions. Their goal is to cover a broad enough selection of material to show readers that real tradeoffs exist, and that the impact of those choices can be both subtle and far-reaching.
Authors Keith Cooper and Linda Torczon convey both the art and the science of compiler construction and show best practice algorithms for the major passes of a compiler. Their text re-balances the curriculum for an introductory course in compiler construction to reflect the issues that arise in current practice.
Engineering a Compiler, Second Edition [图书] 豆瓣 Goodreads
作者: Keith Cooper / Linda Torczon publishing house: Morgan Kaufmann 2011 - 2
This entirely revised second edition of Engineering a Compiler is full of technical updates and new material covering the latest developments in compiler technology. In this comprehensive text you will learn important techniques for constructing a modern compiler. Leading educators and researchers Keith Cooper and Linda Torczon combine basic principles with pragmatic insights from their experience building state-of-the-art compilers. They will help you fully understand important techniques such as compilation of imperative and object-oriented languages, construction of static single assignment forms, instruction scheduling, and graph-coloring register allocation.
In-depth treatment of algorithms and techniques used in the front end of a modern compiler
Focus on code optimization and code generation, the primary areas of recent research and development
Improvements in presentation including conceptual overviews for each chapter, summaries and review questions for sections, and prominent placement of definitions for new terms
Examples drawn from several different programming languages