COMS 4115: Programming Language & Translators
Description
This class will discuss principles of design and implementation of compilers. In particular, we will learn about different phases of a compiler including lexical analysis, syntactic and semantic analysis including type checking, code generation, and optimization. We will also study basic program analysis techniques required to perform compiler optimization.
​
Students will learn the materials by building new modules on top of an existing compiler (Clang/LLVM) in their programming assignments.
Details about Fall 2020 course will be found here.
Lectures
​​
Reading Materials:
-
Compilers: Principles, Techniques, and Tools
By Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman.
2nd Edition, Addison-Wesley, 2006
-
Research Papers
Distributed by the instructor