CS453: Introduction to Compiler Construction |
[Syllabus] | [Grading] | [Topics] | [Assignments] | [Home] |
Spring 2024 CS453 Introduction to Compiler Construction teaches how to build a full compiler from scratch, for (a large subset of) the Java language down to MIPS assembly. Topics covered include grammars, parsers, intermediate representation construction, type checking/analysis, AST translation and lowering, register allocation, instruction scheduling, and ASM code generation. CS453 is geared towards senior undergraduate students and also first-year graduate students who have not taken such an introductory course. |
Course Objectives
Past classes: CS453: Spring 2022, CS453: Spring 2021, CS453: Spring 2020, CS453: Spring 2019, CS453: Spring 2018, CS453, Spring 2017 Prerequisites To understand the material in this course, you will need to have a good working knowledge of data structures such as linked lists, trees, dictionaries, and dynamically allocated structures. You will need to know how to implement these data structures in Java, C, and C++. To successfully complete this course, you should be familiar with material related to the above topics, which are covered in CS200 (Algorithms and Data Structures), CS253 (Problem Solving with C++), and CS314 (Software Development Methods). You will also need to have a good understanding of the memory model and the concept of calling conventions, which is covered in CS70 (Computer Organization) at CSU. Course material All communications and distribution of material (lecture slides, project assignments, sample exams, etc.) are made available exclusively via the Piazza website for the class. The website is not accessible to the general public, if you wish to look at the material prior to deciding to enroll in CS453 contact Louis-Noel Pouchet directly. NOTE: for Spring'21, due to licensing terms change for Piazza, we may use a different website for the class material, this will be announced during the first lecture. |
Instructor | Lecture Coordinates | ||
Louis-Noel Pouchet |
Lectures: 4:00pm-5:15 PM Tuesdays and Thursdays, in Walnut Room 108 |
Department of Computer Science, Colorado State University, Fort Collins, CO 80523 USA © 2019 Colorado State University |