*Textbook and Academic Authors Association (TAA) Textbook Excellence Award Winner, 2024*
Engineering a Compiler, Third Edition covers the latest developments in compiler technology, 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 this 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 treatments of algorithms and techniques used in the front end of a modern compiler
- Pays particular attention to code optimization and code generation, both primary areas of recent research and development
- Focuses 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
- Covers bottom-up methods of register allocation at the local scope
1. Overview of Compilation
2. Scanners
3. Parsers
4. Intermediate Representations
5. Syntax-Driven Translation
6. Implementing Procedures
7. Code Shape
8. Introduction to Optimization
9. Data-Flow Analysis
10. Scalar Optimization
11. Instruction Selection
12. Instruction Scheduling
13. Register Allocation
14. Runtime Optimization
- COMP_412_Course_Files.zip
- COMP_506_Course_Files.zip
- Image collection
- App_A
- App_B
- Chapter001
- Chapter002
- 002001.jpg
- 002002.jpg
- 002003.jpg
- 002004.jpg
- 002005.jpg
- 002006.jpg
- 002007.jpg
- 002008.jpg
- 002009.jpg
- 002010.jpg
- 002011.jpg
- 002012.jpg
- 002013.jpg
- 002014.jpg
- 002015.jpg
- 002016.jpg
- 002017.jpg
- 002018.jpg
- 002019.jpg
- 002020.jpg
- 002un001.jpg
- 002un002.jpg
- 002un003.jpg
- 002un004.jpg
- 002un005.jpg
- 002un006.jpg
- 002un007.jpg
- 002un008.jpg
- 002un009.jpg
- 002un010.jpg
- 002un011.jpg
- 002un012.jpg
- 002un013.jpg
- 002un014.jpg
- 002un015.jpg
- 002un016.jpg
- 002un017.jpg
- 002un018.jpg
- 002un019.jpg
- 002un020.jpg
- 002un021.jpg
- 002un022.jpg
- 002un023.jpg
- 002un024.jpg
- 002un025.jpg
- 002un026.jpg
- 002un027.jpg
- 002un028.jpg
- 002un029.jpg
- 002un030.jpg
- 002un031.jpg
- Chapter003
- 003001.jpg
- 003002.jpg
- 003003.jpg
- 003004.jpg
- 003005.jpg
- 003006.jpg
- 003007.jpg
- 003008.jpg
- 003009.jpg
- 003010.jpg
- 003011.jpg
- 003012.jpg
- 003013.jpg
- 003014.jpg
- 003015.jpg
- 003016.jpg
- 003017.jpg
- 003018.jpg
- 003019.jpg
- 003020.jpg
- 003021.jpg
- 003022.jpg
- 003023.jpg
- 003024.jpg
- 003025.jpg
- 003026.jpg
- 003027.jpg
- 003028.jpg
- 003029.jpg
- 003030.jpg
- 003031.jpg
- 003032.jpg
- 003033.jpg
- 003034.jpg
- 003un001.jpg
- 003un002.jpg
- 003un003.jpg
- 003un004.jpg
- 003un005.jpg
- 003un006.jpg
- 003un007.jpg
- 003un008.jpg
- 003un009.jpg
- 003un010.jpg
- 003un011.jpg
- 003un012.jpg
- 003un013.jpg
- 003un014.jpg
- 003un015.jpg
- 003un016.jpg
- 003un017.jpg
- 003un018.jpg
- 003un019.jpg
- 003un020.jpg
- 003un021.jpg
- 003un022.jpg
- 003un023.jpg
- 003un024.jpg
- 003un025.jpg
- 003un026.jpg
- 003un027.jpg
- 003un028.jpg
- Chapter004
- Chapter005
- 005001.jpg
- 005002.jpg
- 005003.jpg
- 005004.jpg
- 005005.jpg
- 005006.jpg
- 005007.jpg
- 005008.jpg
- 005009.jpg
- 005010.jpg
- 005011.jpg
- 005012.jpg
- 005013.jpg
- 005014.jpg
- 005015.jpg
- 005016.jpg
- 005017.jpg
- 005018.jpg
- 005019.jpg
- 005un001.jpg
- 005un002.jpg
- 005un003.jpg
- 005un004.jpg
- 005un005.jpg
- 005un006.jpg
- 005un007.jpg
- 005un008.jpg
- 005un009.jpg
- 005un010.jpg
- 005un011.jpg
- 005un012.jpg
- 005un013.jpg
- Chapter006
- Chapter007
- Chapter008
- 008001.jpg
- 008002.jpg
- 008003.jpg
- 008004.jpg
- 008005.jpg
- 008006.jpg
- 008007.jpg
- 008008.jpg
- 008009.jpg
- 008010.jpg
- 008011.jpg
- 008012.jpg
- 008013.jpg
- 008014.jpg
- 008015.jpg
- 008016.jpg
- 008017.jpg
- 008018.jpg
- 008019.jpg
- 008020.jpg
- 008021.jpg
- 008022.jpg
- 008023.jpg
- 008024.jpg
- 008un001.jpg
- 008un002.jpg
- 008un003.jpg
- 008un004.jpg
- 008un005.jpg
- 008un006.jpg
- 008un007.jpg
- 008un008.jpg
- 008un009.jpg
- 008un010.jpg
- Chapter009
- 009001.jpg
- 009002.jpg
- 009003.jpg
- 009004.jpg
- 009005.jpg
- 009006.jpg
- 009007.jpg
- 009008.jpg
- 009009.jpg
- 009010.jpg
- 009011.jpg
- 009012.jpg
- 009013.jpg
- 009014.jpg
- 009015.jpg
- 009016.jpg
- 009017.jpg
- 009018.jpg
- 009019.jpg
- 009020.jpg
- 009021.jpg
- 009022.jpg
- 009023.jpg
- 009024.jpg
- 009025.jpg
- 009026.jpg
- 009027.jpg
- 009028.jpg
- 009029.jpg
- 009un001.jpg
- 009un002.jpg
- 009un003.jpg
- 009un004.jpg
- 009un005.jpg
- 009un006.jpg
- 009un007.jpg
- 009un008.jpg
- 009un009.jpg
- 009un010.jpg
- 009un011.jpg
- 009un012.jpg
- 009un013.jpg
- 009un014.jpg
- 009un015.jpg
- 009un016.jpg
- 009un017.jpg
- 009un018.jpg
- 009un019.jpg
- 009un020.jpg
- 009un021.jpg
- 009un022.jpg
- Chapter010
- 010001.jpg
- 010002.jpg
- 010003.jpg
- 010004.jpg
- 010005.jpg
- 010006.jpg
- 010007.jpg
- 010008.jpg
- 010009.jpg
- 010010.jpg
- 010011.jpg
- 010012.jpg
- 010013.jpg
- 010014.jpg
- 010015.jpg
- 010016.jpg
- 010un001.jpg
- 010un002.jpg
- 010un003.jpg
- 010un004.jpg
- 010un005.jpg
- 010un006.jpg
- 010un007.jpg
- 010un008.jpg
- 010un009.jpg
- 010un010.jpg
- 010un011.jpg
- 010un012.jpg
- Chapter011
- Chapter012
- 012001.jpg
- 012002.jpg
- 012003.jpg
- 012004.jpg
- 012005.jpg
- 012006.jpg
- 012007.jpg
- 012008.jpg
- 012009.jpg
- 012010.jpg
- 012011.jpg
- 012012.jpg
- 012013.jpg
- 012014.jpg
- 012015.jpg
- 012016.jpg
- 012017.jpg
- 012018.jpg
- 012019.jpg
- 012un001.jpg
- 012un002.jpg
- 012un003.jpg
- 012un004.jpg
- 012un005.jpg
- 012un006.jpg
- 012un007.jpg
- 012un008.jpg
- 012un009.jpg
- 012un010.jpg
- Chapter013
- Chapter014
- README.docx
- Solutions_to_Exercises.pdf
The book has been restructured to the better and the algorithms have been rewritten and are more clarified than the previous edition which were more abstract and fuzzy. Moreover, there are more examples given for the algorithms.
This will be the main book for the course on compilers. It will be suggested to the students to purchase a copy (paper or digital). Thank you, Carlo
This will be the main book for the course on compilers. It will be suggested to the students to purchase a copy (paper or digital). Thank you, Carlo