2/9 
Logistics 

Course Introduction and Logistics 
2/9 
Lecture 
L0 
Introduction to Racket and Dr. Racket 
2/11 
Lecture 
L1 
Racket Forms and Callsites 
2/11 
Lecture 
L2 
Definitions and the Environment 
2/9 – 
Reading 
R0 
SICP sections 1 through 1.1.5 (stop before 1.1.6) 
2/16 
Lecture 
L3 
Textual Reduction 
2/16 
Lecture 
L4 
Case Splitting and Lists Intro 
2/18 
Lecture 
L5 
Recursion over Lists 
2/18 
Logistics 

Using the Autograder 
2/18 
Project 
P0 
TicTacToe 
2/16 – 
Reading 
R1 
SICP sections 1.1.6 and 1.2 up to 1.2.3 
2/23 
Lecture 
L6 
Lambdas 
2/25 
Lecture 
L7 
Cons Diagrams and Boxes 
2/25 
Lecture 
L8 
Mapping Over Lists 
2/23 – 
Reading 
R2 
SICP section 1.3 and 2.1 
3/2 
Lecture 
L9 
Pattern Matching 
3/4 
Lecture 
L10 
Tail Calls and Tail Recursion 
3/2 – 
Reading 
R3 
SICP sections 2.2 and 2.3 
3/8 
Quiz 
Q0 
Online Synchronous Quiz 0 (80min) 
3/9 
Lecture 
L11 
Practicing Tail Recursion 
3/9 
Lecture 
L12 
Folding over Lists 
3/11 
Project 
P1 
PageRank 
3/16 
Lecture 
L13 
Interpreting IfArith 
3/18 
Lecture 
L14 
Natural Deduction for IfArith 
3/23 


SU Wellness Day (No Class) 
3/25 
Lecture 
L15 
SmallStep Semantics of IfArith 
3/30 
Lecture 
L16 
Lambda Calculus Introduction 
3/30 
Lecture 
L17 
Lambda Calculus: Reductions and Substitution 
4/1 
Lecture 
L18 
Reduction Strategies 
4/6 
Lecture 
L19 
Church Numerals 
4/8 
Lecture 
P2 
Church Encoding 
4/12 
Quiz 
Q1 
Online Synchronous Quiz 1 (100min) 
4/13 
Lecture 

Review / catch up day on lambda calculus 
4/15 
Lecture 

Church encoding quiz review problems 
4/20 
Lecture 
L21 
Fixed Points 
4/22 
Lecture 
L22 
U and Y combinator review 
4/27 
Lecture 
L22 
Continuations 
4/29 
Lecture 
L23 
Control Constructs via Continuations 
4/29 
Project 
P3 
Definitional Interpreter for Scheme 
4/25 
Project 
P4 
PL Feature Blog Post 
5/4 
Lecture 
L24 
SimplyTyped Lambda Calculus 
5/6 
Lecture 
L25 
Type Soundness for STLC 
5/10 
Quiz 
Q2 
Online Synchronous Quiz (details TBA) 
5/11 
Lecture 
L26 
Macros and Hygiene 
5/13 
Lecture 
L27 
Course Wrapup 
TBA 
Exam 
F 
Final (120min, comprehensive, submit up to 6 answers) 