* [[Order: static versus dynamic|topics/week1 order]]
+* The Lambda Calculus
+
+ * [[Intro to the Lambda Calculus|topics/week2 lambda intro]]
+
+ * [[Advanced notes on the Lambda Calculus|topics/week2 lambda advanced]]
+
+ * Encoding data types in the Lambda Calculus
+
+ * [[Booleans, Tuples, Lists, and Numbers|topics/week2 encodings]]
+
## Topics by week ##
Week 1:
* [[Introduction to functional programming|topics/week1 kapulet intro]]
Basics of functional programming: `let`, `case`, pattern matching, and
recursion. Definitions of factorial.
-* [[Advanced notes|topics/week1 kapulet advanced]]
+* [[Advanced notes on functional programming|topics/week1 kapulet advanced]]
* [[Homework for week 1|exercises/assignment1]]
Week 2:
* [[Introduction to the Lambda Calculus|topics/week2 lambda intro]]
* [[Advanced notes on the Lambda Calculus|topics/week2 lambda advanced]]
-* Encoding Booleans, Tuples, Lists, and Numbers (in progress)
-* Homework for week 2 (in progress)
+* [[Encoding Booleans, Tuples, Lists, and Numbers|topics/week2 encodings]];
+* [[Homework for week 2|exercises/assignment2]]
+
+Week 3:
+* More on Lists
+Introduces list comprehensions, shows how to encode `tail` in the Lambda Calculus
+* Combinatorial Logic
+* Homework for week 3