The objective of this course is to learn the theory and practice behind building automatic translators (compilers) for higher level programming languages and to engineer and build key phases of a compiler in Java or C++ for a small language.
Overview
Syllabus
- Front End
- Compiler Phases,Scanners & Parsers,Semantic Analysis
- Middle End
- Syntax Directed Translation,Control Structures and Back-patching,Function and Procedure Calls & Runtime Organization
- Back-end
- Register Allocation & Instruction Selection,Code layout and Code Generation,Brief Introduction to Code Optimization
Taught by
Santosh Pande and Catherine Gamboa