COL728 : Compiler Design : References
No textbook is required for this class. However, you may find a textbook
useful as a reference or to learn more details of some of the ideas
discussed in the course. You will find some good textbooks in the list of
- This course will be loosely based on the online course videos by Alex Aiken.
- The labs (programming assignments) will involve the use of a lexical analyser generator (like GNU Flex, wikipedia page) and
a parser generator (like GNU Bison, wikipedia page).
- You might find it interesting to look through the code of the
Tiny C Compiler, which
bundles the compiler, linker and assembler into one small and fast executable.
- For your labs, you will be required to generate LLVM IR code for C programs. You will also be required to optimize LLVM IR code. A nice LLVM tutorial is available at http://releases-origin.llvm.org/2.6/docs/tutorial/.
- Compilers: Principles, Techniques, and Tools (Second Edition)
Alfred Aho, Monica Lam, Ravi Sethi, and Jeffrey Ullman.
- Modern Compiler Implementation in Java (Second Edition)
Andrew Appel and Jens Palsberg.
Cambridge University Press
- Engineering a Compiler
Keith Cooper and Linda Torczon.