Modern Compiler Implementation in Java - Andrew W. Appel

Modern Compiler Implementation in Java

Basic Techniques

(Autor)

Buch | Hardcover
408 Seiten
1997
Cambridge University Press (Verlag)
978-0-521-58387-9 (ISBN)
68,55 inkl. MwSt
  • Titel erscheint in neuer Auflage
  • Artikel merken
Describes all phases of a modern compiler, including current techniques in code generation and register allocation, for imperative, functional, and object oriented languages.
This textbook explains all phases of a modern compiler: lexical analysis, parsing, abstract syntax, semantic actions, intermediate representations, instruction selection via tree matching, dataflow analysis, graph-colouring register allocation with coalescing, and runtime systems. It covers current techniques in code generation and register allocation, as well as functional and object-oriented languages, which are missing from most books on the topic. The author illustrates the most accepted and successful techniques in a concise way, rather than as an exhaustive catalogue of every possible variant. Detailed descriptions of the interfaces between modules of a compiler are illustrated with actual Java classes. A unique feature of the book is a well designed compiler implementation project in Java, including front-end and 'high-tech' back-end phases, so that students can build a complete working compiler in one semester. The textbook is meant for use in a one-semester first course for undergraduates in compiler design. Accompanying support software is available.

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. Dataflow analysis; 17. Loop optimizations; Appendix: Tiger language reference manual.

Erscheint lt. Verlag 13.1.1997
Zusatzinfo Worked examples or Exercises; 34 Tables, unspecified; 45 Line drawings, unspecified
Verlagsort Cambridge
Sprache englisch
Maße 193 x 243 mm
Gewicht 930 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Mathematik / Informatik Informatik Software Entwicklung
Mathematik / Informatik Informatik Web / Internet
ISBN-10 0-521-58387-X / 052158387X
ISBN-13 978-0-521-58387-9 / 9780521583879
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
mit über 150 Workouts in Java und Python

von Luigi Lo Iacono; Stephan Wiefling; Michael Schneider

Buch (2023)
Carl Hanser (Verlag)
29,99
Einführung, Ausbildung, Praxis

von Christian Ullenboom

Buch | Hardcover (2023)
Rheinwerk (Verlag)
49,90