Revised July 13, 2015

CS 444: Compiler Construction


Watch a video introduction to this course on YouTube.

General description

This course covers the basic structure of compilers for Algol-like languages. A major part of the course involves implementing a compiler for a simplified Algol-like language. Students discover software tools and techniques that are applicable to both compilers and the implementation of system utility routines, command interpreters, etc.

Logistics

Audience

Normally available

Related courses

For official details, see the UW calendar.

Software/hardware used

Typical reference(s)

Required preparation

At the start of the course, students should be able to

Learning objectives

At the end of the course, students should be able to

Much of the course mark is based on a project that is done in teams of 3 or 4 students.

Typical syllabus

Introduction (1 hour)

Course project (1 hour)

Parsing and lexical analysis (3 hours)

Scope rules, block structure and symbol table organization (6 hours)

Semantic processing (6 hours)

Storage and organization (8 hours)

Code generation (8 hours)

Code optimization (3 hours)