Intro from course website
The goal of this class is to expose students to advanced programming language ideas, including high-level programming abstractions, expressive type systems and program analyses. We will develop these ideas as follows.
-
First, we will see how the lambda calculus can be used to distill essence of computation into a few powerful constructs, and we will use it as a launching pad to study expressive type systems, logics and analyses that can make precise predictions about run-time behavior at compile time.
-
Second, we will study how this calculus yields Haskell, a functional programming language that has been the incubator for many recent PL advances. We will use Haskell to learn about a variety of high-level programming abstractions and techniques.
Slides
No. | Date | Transcription |
---|---|---|
1 | 2021/9/23 | slides-01-lambda |
2 | 2021/9/29 |
Notes
TBD