Schedule
TBD
Week 1
Thursday, September 3
First day of class.
Week 2
Tuesday, September 8
Reading: Peter Naur (1985), Programming as Theory Building (PDF)
Thursday, September 10
Reading: look at the Compiling to Neurons papers of Joey Velez-Ginorio, who will join as a guest. In particular, see the POPL’26 and PLDI’26 papers with Nada Amin, Konrad Kording, and Steve Zdancewic.
Week 3
Tuesday, September 15
Reading: Sverrir Thorgeirsson, Theo B. Weidmann, Zhendong Su (CHI’26), Computer Science Achievement and Writing Skills Predict Vibe Coding Proficiency (PDF)
Secondary reading: Kathi Fisler, Shriram Krishnamurthi, Michael Littman (CACM’26 to appear), Teaching Novice Computing and Programming in the Agentic AI Era, (link)
Thursday, September 17
Reading: Alex Gu, Naman Jain, Wen-Ding Li, Manish Shetty, Yijia Shao, Ziyang Li, Diyi Yang, Kevin Ellis, Koushik Sen, Armando Solar-Lezama (ICML 2025), Challenges and Paths Towards AI for Software Engineering (PDF)
Alex Gu will join as a guest.
Week 4
Tuesday, September 22
Reading: Gan Shen, Shun Kashiwa, Lindsey Kuper (ICFP 2024). HasChor: Functional Choreographic Programming for All (Functional Pearl) (doi)
PhD student Cameron Wong will talk about his experience implementing choreographic libraries in Lean.
Thursday, September 24
Reading: Simon Henniger, Stephen Chong, Nada Amin (2026). Djinnlang: Higher-Level Programming by Unambiguous Specification with an LLM in the Compiler (link)
Week 5
Tuesday, September 29
Class on formal verification.
Refresher: CS1520: Axiomatic Semantics and Hoare Logic (Lecture 19) and Curry-Howard correspondence (Lecture 15).
Reading 1 (for auto-active verifiers like Dafny): C. A. R. Hoare (CACM 1969). An axiomatic basis for computer programming (doi).
Reading 2 (for proof assistants like Lean or Rocq): Philip Wadler (CACM 2015). Propositions as Types (doi)
Thursday, October 1
Reading: Bowers et al. (POPL 2023). Top-Down Synthesis for Library Learning (doi)
Maddy Bowers will be presenting and discussing her work related to library learning.
Week 6
Tuesday, October 6 (Assignment 1 Due)
Discussion of assignment.
Thursday, October 8
Discussion of assignment.
Week 7
Tuesday, October 13
TBD
Thursday, October 15
TBD
Week 8
Tuesday, October 20
Reading: Celeste Barnaby, Danny Ding, Osbert Bastani, Isil Dillig (PLDI 2026). Choose, Don’t Label: Multiple-Choice Query Synthesis for Program Disambiguation (PDF).
Celeste will join us as a guest for the session.
Thursday, October 22
TBD
Week 9
Tuesday, October 27 (Project Proposals Due)
TBD
Thursday, October 29
TBD
Week 10
Tuesday, November 3
TBD
Thursday, November 5
TBD
Week 11
Tuesday, November 10
TBD
Thursday, November 12
TBD
Week 12
Student Presentations of their Ongoing Projects
Tuesday, November 17
TBD
Thursday, November 19
TBD
Week 13
Tuesday, November 24
TBD
Thursday, November 26
Thanksgiving.
Week 14
Tuesday, December 1
Last day of class.