Modern Compiler Implementation in Java
Seiten
1997
Cambridge University Press (Verlag)
978-0-521-58388-6 (ISBN)
Cambridge University Press (Verlag)
978-0-521-58388-6 (ISBN)
- Titel erscheint in neuer Auflage
- Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Describes all phases of a modern compiler.
Last year you may have seen the Modern Compiler Implementation in C: Basic Techniques (1997) which was the preliminary edition of our new 1998 textbook, Modern Compiler Implementation in C. The new, expanded version of this 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. 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. Accompanying support software is available.
Last year you may have seen the Modern Compiler Implementation in C: Basic Techniques (1997) which was the preliminary edition of our new 1998 textbook, Modern Compiler Implementation in C. The new, expanded version of this 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. 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. Accompanying support software is available.
Part I. Fundametals 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.
Erscheint lt. Verlag | 13.12.1997 |
---|---|
Zusatzinfo | Worked examples or Exercises; 34 Tables, unspecified; 80 Line drawings, unspecified |
Verlagsort | Cambridge |
Sprache | englisch |
Maße | 194 x 242 mm |
Gewicht | 1138 g |
Themenwelt | Informatik ► Programmiersprachen / -werkzeuge ► Java |
Informatik ► Theorie / Studium ► Compilerbau | |
Mathematik / Informatik ► Informatik ► Web / Internet | |
ISBN-10 | 0-521-58388-8 / 0521583888 |
ISBN-13 | 978-0-521-58388-6 / 9780521583886 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
Mehr entdecken
aus dem Bereich
aus dem Bereich
mit über 150 Workouts in Java und Python
Buch (2023)
Carl Hanser (Verlag)
CHF 41,95
Einführung, Ausbildung, Praxis
Buch | Hardcover (2023)
Rheinwerk (Verlag)
CHF 69,85