| CS345H Fall 2017 |
![]() |
Welcome to the home page for |
| Date | Lecture topics | Slides | Reading | Assigned | Due |
| 8/30 | Introduction Basic Lambda Calculus I |
Lecture 1 | |||
| 9/11 | Lambda Calculus II Introduction to L |
Lecture 2 | PA0, WA1 | ||
| 9/13 | Lexical Analysis | Lecture 3 | |||
| 9/18 | Lexing and Finite Automata | Lecture 4 Lecture 4 with animations |
PA1, WA2 | PA0, WA1 | |
| 9/20 | Review | ||||
| 9/25 | Introduction to Parsing | Lecture 5 Lecture 5 with animations |
WA2 | ||
| 9/27 | Parsing Algorithms | Lecture 6 Lecture 6 with animations |
WA3, PA2 | PA1 | |
| 10/02 | Operational Semantics I | Lecture 7 Lecture 7 with animations |
|||
| 10/04 | Operational Semantics II | Lecture 8 Lecture 8 with animations |
WA3 | ||
| 10/09 | Midterm 1 review | PA2 | |||
| 10/11 | Midterm 1 | ||||
| 10/16 | Typing rules and proofs | Lecture 9 Lecture 9 with animations |
WA3, PA3 | ||
| 10/18 | Continued | ||||
| 10/23 | Review | WA3 | |||
| 10/25 | Project Day | ||||
| 10/30 | Type Checking | Lecture 10 Lecture 10 with animations |
PA3 | ||
| 11/01 | Polymorphism | Lecture 11 Lecture 11 with animations |
|||
| 11/06 | Type Inference | Lecture 12 Lecture 12 with animations |
|||
| 11/08 | Type Inference II | Lecture 13 Lecture 13 with animations |
Project Start | ||
| 11/13 | Midterm Review | Project Groups and 1-page project proposal | |||
| 11/15 | Midterm 2 | ||||
| 11/20 | Imperative Languages I | Lecture 14 Lecture 14 with animations |
|||
| 11/22 | Thanksgiving | ||||
| 11/27 | Imperative Languages II | Lecture 16 Lecture 16 with animations |
|||
| 11/29 | Project Day | ||||
| 12/04 | Object-Oriented Programming | Lecture 17 Lecture 17 with animations |
|||
| 12/06 | Real programming languages: JavaScript | Lecture 21 Lecture 21 with animations |
|||
| 12/11 | Final Exam | Project Due | |||