Calendar 📅

DateTopicOutDue
Week 1How to design a programming language?
06/24Intro, Syntax I
06/25Syntax II, Inference RulesHW 1
06/26Operational Semantics
06/27Section: Python Tutorial
Week 2What makes a programming language?
07/01Operational Semantics Practicum
07/02Variables
07/03Lambda CalculusHW 2HW 1
07/04No class (Independence Day)
Week 3How to abstract data?
07/08Types
07/09Finite and recursive types
07/10Pattern-matchingHW 3HW 2
Week 4How to abstract computation?
07/15Quiz 1 (scheduled)
07/16Polymorphism, type inference
07/17Defunctionalization, continuation-passingHW 4HW 3
Week 5How to change the world?
07/22Mutable states
07/23Effect handlers
07/24Quiz 2 (tentative)HW 5HW 4
Week 6What is the future of programming like?
07/29Advanced topic, TBD
07/30Advanced topic, TBD
07/31Advanced topic, TBD
08/02(End of summer session A)HW 5

Weekly Pattern

MonTueWedThuFri
ClassNo class 🏖️😎Lecture 🧑‍🏫
(12:30-1:50pm,
Phleps 2514)
Lecture 🧑‍🏫
(12:30-1:50pm,
Phleps 2514)
Lecture 🧑‍🏫
(12:30-1:50pm,
Phleps 2514)
Section 🗣️
(11am-12:20pm,
Phelps 1440)
OHJiaming
(2-4pm, CSIL)
Junrui
(2-3pm, Phelps 2510)
Junrui
(2-3pm, Phelps 2510)
Junrui
(2-3pm, Phelps 2510)
Junrui
(1-2pm, Building 936 aka "TA trailer")