On this page, you will find slides and other materials presented in class. Most of these slides were originally based on some lecture notes by Eli Barzilay. Over the years they have mutated in various ways, most recently with some cosmetic changes to follow the 3rd edition of PLAI a bit better.
Mistakes are probably mine.
You can browse the examples directly or by tags.
Lecture 1: Introduction
Tue Jan 9 13:00:00 2024
Lecture 2: Parsing, Conditionals, Values
Thu Jan 11 00:00:00 2024
Lecture 3: local binding
Tue Jan 16 00:00:00 2024
Lecture 4: Functions
Thu Jan 18 00:00:00 2024
Lecture 5: macros
Tue Jan 23 00:00:00 2024
Lecture 6: objects
Thu Jan 25 00:00:00 2024
Lecture 7: more objects
Tue Jan 30 00:00:00 2024
Lecture 8: Static Typing
Thu Feb 1 00:00:00 2024
Lecture 9: Static Typing II
Tue Feb 13 00:00:00 2024
Lecture 10: Safety
Thu Feb 15 00:00:00 2024
Lecture 11: Safety and tags
Tue Feb 20 00:00:00 2024
Lecture 12: Topics in Types
Thu Feb 22 00:00:00 2024
Lecture 13: Algebraic and Union Types
Tue Feb 27 00:00:00 2024
Lecture 14: Nominal and Structural types
Thu Feb 29 00:00:00 2024
Lecture 15: Generators and Continuations
Tue Mar 12 00:00:00 2024
Lecture 16: Web Programming and Continuations
Thu Mar 14 00:00:00 2024
Lecture 17: Continuation based intepreters
Tue Mar 19 00:00:00 2024
Lecture 18: Garbage Collection
Tue Mar 26 00:00:00 2024
Lecture 19: Reference counting and two-space collectors
Thu Mar 28 00:00:00 2024
Lecture 20: Mark and Sweep
Tue Apr 2 00:00:00 2024
Lecture 21: Allocators
Thu Apr 4 00:00:00 2024
Lecture 22: Generational Collection
Tue Apr 9 00:00:00 2024
Lecture 23: Incremental Collection and Stack Nursery
Thu Apr 11 00:00:00 2024