Last update: Jan 22, 2021 by

COMP 520 - Compilers

Spring 2021
Tue, Thu 12:30 - 1:45 PM
Jan 19 - May 4
(Remote-Only - Synchronous)

Instructor: Jan Prins (
TA: Chris Dean (


This upper-level undergraduate class (also available for graduate credit) extends and integrates material from prerequisite courses to build a compiler for a non-trivial subset of the Java programming language. Java is also the implementation language for the compiler. Upon completion of this course, you should:


Reading Assignments

Written Assignments

Programming Assignments

Lecture Slides

  1. Introduction
  2. PLspec

Lecture Recordings

  1. 01-19_COMP_520_Compilers_Introduction_startsat-2m0s.mp4
  2. 01-21_COMP_520_Compilers_PLspec_startsat-13m30s.mp4

Course Syllabus

Administrative details, such as prerequisites, exam dates, honor code, and the sequence of topics covered in the course can be found in the course syllabus


Programming Language Processors in Java: Compilers and Interpreters, by David Watt and Deryck Brown, Prentice Hall, 2000 (ISBN 0-130-25786-9).

[Course text] Watt & Brown, Programming Language Processors in Java

This page is maintained by Send mail if you find problems.