CSE logo University of Washington Computer Science & Engineering
 CSE 401, WI '07: Introduction to Compiler Construction
  CSE Home   About Us    Search    Contact Info 

 Introduction slides
 Reading Schedule
 Syntactic Analysis
 Semantic Analysis
 Intermediate Representation
 Code Generation
 Runtime Systems
Getting Started
 Project Description
 Setting Up SVN
 Project Code
 Homework #1
 Homework #2
 Project #1
 Project #2
   MiniJava Syntax
 Project #3
 Project #4
 Project #5

Time:MWF 11:30-12:20
Place:EEB 125

Instructor:Larry Snyder (snyder@cs)
 Office hours: MW, 1:30-2:00, CSE 584
TA:Ben Lerner (blerner@cs)
 Office hours: Th, 1:30-3:00, CSE 216

Project 2 extension:

Project 2 is now due Monday, Feb 12.

Class Email: cse401 at cs. Your Subscription   Archives
Make sure that you sign up for the class email list. 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 TBD. The midterm is scheduled for 1/31/2007.
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-2006, 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 nkuchta]