Final exam details
June 5, 2018

The final exam will be held on Monday, June 11th from 12:15-3:15pm in Gates B1 (lecture room). Similarly with the midterm, you are allowed to bring notes and access your computer for notes.

Midterm exam details
April 27, 2018

The midterm will be held in class on Thursday, May 3rd. It will be open notes / computer (for notes), but you are not allowed to connect to the Internet nor perform any computation on the computer.

Welcome to CS143!
April 3, 2018

Welcome to CS143! Please enroll on Gradescope and Piazza.

More Information





  1. Course Overview
  2. Cool: The Course Project
  3. Lexical Analysis
  4. Finite Automata
  5. Introduction to Parsing
  6. Syntax-Directed Translation
  7. Top-Down Parsing & Bottom-Up Parsing I
  8. Bottom-Up Parsing II
  9. Semantic Analysis & Type Checking I
  10. Type Checking II
  11. Run-time Environments
  12. Code Generation
  13. Operational Semantics
  14. Intermediate Code & Local Optimization
  15. Global Optimization
  16. Register Allocation
  17. Automatic Memory Management
  18. Language Security