The following is an *approximate* week-by-week course schedule: PLPF: Practical Foundations of Programming Languages Week 1: 2010-09-02 (R): Introduction to FP via ATS Week 2: 2010-09-07 (T): Introduction to Programming with Theorem-Proving 2010-09-09 (R): Mathematical Induction; More Introduction to PwTP Reading Chapter 1 and Chapter 2 in PLPF Week 3 2010-09-14 (T): Theorem-Proving in ATS; Structural Induction 2010-09-16 (R): Untyped Lambda-Calculus (I) Reading Chapter 3 and 4 in TAPL Week 4 2010-09-21 (T): Untyped Lambda-Calculus (II) 2010-09-23 (R): Untyped Lambda-Calculus (III) Reading Chapter 5 and 6 in TAPL Week 5 2010-09-28 (T): Untyped Lambda-Calculus (IV) 2010-09-30 (R): Simply Typed Lambda-Calculus (I) Week 6 2010-10-05 (T): Simply Typed Lambda-Calculus (II) 2010-10-07 (R): Simply Typed Lambda-Calculus (III) Week 7 2010-10-12 (T): No Class (Substituting Monday's Schedule) 2010-10-14 (R): Simply Typed Lambda-Calculus (IV) Week 8 2010-10-19 (T): dependent datatypes: lists 2010-10-21 (R): dependent datatypes: Braun trees Week 9 2010-10-26 (T): Linear views: read and write through a pointer 2010-10-28 (R): No Class Week 10 2010-11-02 (T): Linear views: arrays and lists 2010-11-04 (R): Midterm Week 11 2010-11-09 (T): Linear views: singly-linked lists 2010-11-11 (R): Using linear types in practice: cairo for 2D graphics Week 12 2010-11-16 (T): System F 2010-11-18 (R): Programming in System F (I) Week 13 2010-11-23 (T): Programming in System F (II) 2010-11-24 (R): No Class (Thanksgivings) Week 14 2010-11-30 (T): Continuation (I) 2010-12-02 (R): Continuation (II) Week 15 2010-12-07 (T): Recursive Sum Types; reading chapter 11, chapter 21 2010-12-09 (R): (Office hour) ------ end of [schedules.txt] ------