Search for contacts, projects,
courses and publications

Compiler Construction

People

Nystrom N.

Course director

Description

This course is about how programs written in high-level languages are executed on modern hardware. Understanding how languages are implemented is useful for reasoning about program behavior and performance. A secondary goal of the course is to expose students to the principles, techniques, and tools used to construct compilers and interpreters. The course will cover both the theory and practice of programming language implementation. Topics include compiler structure, lexical and syntactic analysis (parsing), types, semantic analysis, program representations, data-flow analysis, register allocation, optimization, and compiler construction tools.

 

RECOMMENDED COURSES
Advanced Programming & Design, Algorithms & Complexity, Software Performance

 

 

REFERENCES

  • "Compilers: Principles, Techniques, and Tools", 2nd edition, Alfred Aho, Monica Lam, Ravi Sethi, and Jeffrey Ullman, 2006.

Education