Compilers

Schedule

Lecture Hours: 11:20 AM - 12:35 AM on Tuesdays and Thursdays
Lecture Location: Science Center 181
Lab Location: Clothier 016

Calendar

The following is a tentative course calendar; it is subject to change as circumstances dictate.

Captured videos of lecture are linked in the calendar below. The corresponding resources created during those lectures can be found in the Lecture Materials.

WEEK DAY ANNOUNCEMENTS TOPIC & READING ASSIGNMENTS
1

Jan 17

Lecture

Introduction to OCaml

OCaml Warm-Up

Jan 19

Lecture

2

Jan 24

Lecture

Higher-Order Functions and Trees

Jan 26

Lab Activity

Lecture

Drop/add ends (Jan 30)

3

Jan 31

Lecture

Syntax and Scope

Adder

Feb 02

Lecture

4

Feb 07

Lecture

A-Normal Form

Boa

Feb 09

Lecture

5

Feb 14

Lecture

Value Tagging

Cobra

Feb 16

Lecture

Runtime Errors

6

Feb 21

Lecture

Functions

Diamondback

Feb 23

Lecture

Take-Home Mid-Term (assigned)

Compile-time Errors

7

Feb 28

Lecture

Take-Home Mid-Term (due)

System Calls

Mar 02

Lecture

Register Allocation

 

Mar 07

Spring Break

Mar 09

8

Mar 14

Lecture (sort of)

Heap Allocation and Pairs

Egg-Eater

Mar 16

Lecture

9

Mar 21

Lecture

First-Class Functions and Closures

Foxsnake

Mar 23

Lecture

CR/NC/W Deadline (Mar 24)

10

Mar 28

Lecture

Mar 30

Lecture

Garbage Collection

11

Apr 04

Lecture

Mark/Compact

Garbage Snake

Apr 06

Lecture

Memory Management Strategies

12

Apr 11

Lecture

Apr 13

Lecture

Tail Call Optimization

13

Apr 18

Lecture

Hoop Snake

Apr 20

Lecture

Parsing

14

Apr 25

Lecture

Apr 27

Lecture

 

May 09

Take-Home Final