image University of Washington Computer Science & Engineering
  CSE 401Sp '05:  Introduction to Compiler Construction
  CSE Home   About Us    Search    Contact Info 




Reading Schedule




Syntactic Analysis

Semantic Analysis
Intermediate Representation
Code Generation



Getting Started

Project Description

Setting up CVS
Project Code




Homework #1 (due 4/4)

Homework #2 (due 4/15)
Project #1 (due 4/20)

Project #2 (due 5/4)

Project #3 (due 5/11)

Project #4 (due 5/18)

Project #5 (due 5/27)

Project #6 (due 6/6)


Time: MWF 12:30-1:20
Place: EE1 045
Office Hours

Larry Snyder

    email: snyder

4:00- 5:20,  CSE 584 
TA:  Ethan Phelps-Goodman 
    email: ethanpg
10:30- 11:20,  CSE 216 

Class Email:   email: cse401    Your Subscription   Archives
You should be automatically subscribed. Use the link above if you aren't receiving emails. Feel free to use the list to ask/answer questions; often, many of your classmates have the same question and/or know the answers. Instructor and TAs read the list, too.

Project: The project involves turning a toy compiler into an (almost) real one. You will work in teams of 2. Each project milestone will be graded on correctness, coding style, and completeness of test cases. See assignment links for details.


  • Homework: 15%
  • Midterm: 15%
  • Final: 25%
  • Course project: 40%
  • Class participation: 5%
  • (relative weight tentative)

Late Policy

  • Each student has three late days to use over the course of the quarter, without penalty. Beyond that, 25% will be deducted from an assignment's grade for each calendar day it is late. Assignments are due at the start of class, unless otherwise noted. Late days are for you to use to manage unavoidable conflicts in your own schedule; excuses for late work beyond the three late days will not be accepted.

Text: Required: Cooper & Torczon, Engineering a Compiler. Also useful is Aho, Sethi, & Ullman, Compilers: Principles, Techniques, and Tools .

Catalog Description: Fundamentals of compilers and interpreters; symbol tables, lexical analysis, syntax analysis, semantic analysis, code generation, and optimization for general purpose programming languages. No credit to students who have taken 413.

Exams: The final exam is at 8:30-10:20 p.m. Thursday, Jun. 9, 2005, in EE045. The midterm is on Monday, April 25th at the regular class time.
Prerequisites: CSE 322; CSE 326; CSE 341; CSE 378.
Credits: 3

Portions of the CSE 401 Web may be reprinted or adapted for academic nonprofit purposes, providing the source is accurately quoted and duly credited. The CSE 401 Web: 1993-2005, Department of Computer Science and Engineering, University of Washington.

CSE logo Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA  98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to cse401-webmaster at]