...
Tu | Aug 27 | Motivation and the Elements (Constants) of Racket | Skim HTDP First Edition, Part 1 (Ch Sections 1-8), Part 2 (Ch Sections 9-10, 13) | ||
Th | Aug 29 | Conditionals, Function Definitions, and Computation by Reduction | |||
Tu | Sep 03 | Conditionals, Function Definitions, and Computation by Reduction | Review Ch 8 HTDP Part 2 (Ch 9-10) | Sep 09 | |
3 | Th | Sep 05 | The Program Design Recipe for Racket, which focuses on using recursion to process lists and natural numbers | Preface, 9.4 HTDP Part 2 (Ch 11-13) | |
Tu | Sep 10 | Data Definitions, Data-driven Structural Recursion, | HTDP Part 3 | Sep 11 | |
5 | Th | Sep 12 | Mutually Recursive Definitions and Help Functions | HTDP Ch 15-17 | |
Tu | Sep 17 | Local Definitions and Lexical Scope | HTDP Parts 5-6 | Sep 23 | |
Th | Sep 19 | Lambda the Ultimate and Reduction Semantics | Laws Of Evaluation | ||
Tu | Sep 24 | Functional Abstraction and Polymorphism | |||
Th | Sep 26 | Functions as Values | Homework 4 | Oct 02 | |
10 | Tu | Oct 01 | Generative (Non-structural) Recursion | Homework 5 (long)* | Oct 16 |
11 | Th | Oct 03 | Lazy Evaluation and Non-strict Constructors | ||
12 | Tu | Oct 08 | Techniques for Implementing Lazy Evaluation | ||
13 | Th | Oct 10 | A Glimpse at Imperative Racket and Memoization | Sample Exam | |
Tu | Oct 15 | Fall Recess | |||
14 | Th | Oct 17 | On to Java! Midterm (Through Lecture 13 and HW 5) 7-10 pm | Oct 23 | |
Tu | Oct 17 | Adapting the HTDP Design Recipe to Java | |||
15 | Th | Oct 19 | Higher-order Functional Programming in Java | Homework 7 | Oct 26 |
16 | Tu | Oct 24 | Four Key Idioms for Encoding FP in Java | ||
17 | Th | Oct 26 | The Singleton and Visitor Patterns | Homework 8 | Nov 1 |
18 | Tu | Oct 31 | Java Generics and Their Role in FP in Java | ||
19 | Th | Nov 02 | Reasoning About Functional Programs | Homework 9* | Nov 8 |
20 | Tu | Nov 07 | First-order Programming Logic (an analog of ACL2 [UT Austin]) | ||
21 | Th | Nov 09 | Theorem Proving Strategies | Homework 10 | Nov 15 |
22 | Tu | Nov 14 | Hoare Logic | ||
23 | Th | Nov 16 | imperative Loop Invariants vs. Contracts for Help Functions | Homework 11 | Nov 27 |
24 | Tu | Nov 21 | Reasoning About Procedure Calls | ||
25 | Tu | Nov 28 | Hoare Logic Applied to OO Code | ||
26 | Th | Nov 30 | The Future of FP and Programming Logic |
...