CS 553: Compiler Construction (Fall 2006)


Syllabus for CS 553: Compiler Construction (Fall 2006)

Date and Time

MWF 2:10-3:00, Room 310B


Dr. Michelle Strout (mstrout@cs.colostate.edu), Office hours: M 3-4:30pm, R 11-12am

Class Communication

Email: cs553@googlegroups.com, URL: http://groups.google.com/group/cs553

Course Description

This course is a broad introduction to advanced issues in compiler construction. Topics will include the following: scanning, parsing, abstract syntax trees, register allocation, instruction scheduling, control-flow analysis, data-flow analysis, static single assignment, alias/pointer analysis, interprocedural analysis, loop transformations for parallelism and locality, and compiling object-oriented languages.

Prerequisites for this course include an undergraduate automata theory class and an undergraduate compilers course or extensive Java programming experience.


Modern Compiler Implementation in Java, 2nd Edition by Andrew W. Appel, 2002.

Homework and Projects

There will be three homework assignments to be completed individually and due at the beginning of class. There will be one small programming project to be done individually and three larger programming projects to be done with a partner.


The midterm exam is on Oct 18th. The final exam time is 9:10-11:10am on Dec 14th.

Grades (will be posted at WebCT)

Project: 40%, Final exam: 25%, Midterm exam: 20%, Homework: 15%

Honesty Policy

Read and know the Computer Science Department Student Information Sheet at http://www.cs.colostate.edu/~info/student-info.html.
Michelle Strout
Last modified: August 24, 2006