Function definitions and function calls, supporting lexical scope with closures, will be added to our language specs and implementations.
We turn again to Scheme to understand the idea of functional programming in a multi-paradigm language, and will see through our own implementation as well as writing code in functional languages, how this one powerful abstraction allows us to implement complex data structures and even something like objects.
Classes
- Class 4.1: Closures and lambdas in Scheme and elsewhere (Wednesday 29 October)
- Class 4.2: Frames and closures (Monday 03 November)
- Class 4.3: Objects with lambda and message passing (Wednesday 05 November)
- Class 4.4: Currying and finishing up closures (Monday 10 November)
Homeworks
- HW 4.1 (due before class on Monday 17 November)
Labs
- Lab 4.1: Syntax for a functional language (due 23:59 on Monday 10 November)
- Lab 4.2: Interpreter for functional language (due 23:59 on Wednesday 19 November)