Modern Compiler Implementation in ML

Modern Compiler Implementation in ML

Hardback

By (author) Andrew W. Appel

List price $51.06

Unavailable - AbeBooks may have this title.

Additional formats available

Format
Paperback $69.78
  • Publisher: CAMBRIDGE UNIVERSITY PRESS
  • Format: Hardback | 548 pages
  • Dimensions: 156mm x 246mm x 32mm | 1,110g
  • Publication date: 1 January 1998
  • Publication City/Country: Cambridge
  • ISBN 10: 0521582741
  • ISBN 13: 9780521582742
  • Illustrations note: 80 b/w illus. 34 tables 117 exercises

Product description

This new, expanded textbook describes all phases of a modern compiler: lexical analysis, parsing, abstract syntax, semantic actions, intermediate representations, instruction selection via tree matching, dataflow analysis, graph-coloring register allocation, and runtime systems. It includes good coverage of current techniques in code generation and register allocation, as well as functional and object-oriented languages, that are missing from most books. In addition, more advanced chapters are now included so that it can be used as the basis for two-semester or graduate course. The most accepted and successful techniques are described in a concise way, rather than as an exhaustive catalog of every possible variant. Detailed descriptions of the interfaces between modules of a compiler are illustrated with actual C header files. The first part of the book, Fundamentals of Compilation, is suitable for a one-semester first course in compiler design. The second part, Advanced Topics, which includes the advanced chapters, covers the compilation of object-oriented and functional languages, garbage collection, loop optimizations, SSA form, loop scheduling, and optimization for cache-memory hierarchies.

Other people who viewed this bought:

Showing items 1 to 10 of 10

Other books in this category

Showing items 1 to 11 of 11
Categories:

Review quote

"Contains most up-to-date compiler techniques. Contains good programming assignment." Professor Zhong Shao, Yale University

Table of contents

Part I. Fundamentals of Compilation: 1. Introduction; 2. Lexical analysis; 3. Parsing; 4. Abstract syntax; 5. Semantic analysis; 6. Activation records; 7. Translation to intermediate code; 8. Basic blocks and traces; 9. Instruction selection; 10. Liveness analysis; 11. Register allocation; 12. Putting it all together; Part II. Advanced Topics: 13. Garbage collection; 14. Object-oriented languages; 15. Functional programming languages; 16. Polymorphic types; 17. Dataflow analysis; 18. Loop optimizations; 19. Static single-assignment form; 20. Pipelining and scheduling; 21. The memory hierarchy; Appendix.