clarify why Lambda Calculus prefers curried functions, thanks for input Kyle
[lambda.git] / content.mdwn
1 # Topics #
2
3 These topics are organized in two ways: by their content, and by the
4 week in which they were introduced.
5
6 ## Topics by content ##
7
8 * [[Introduction to functional programming|topics/week1 kapulet intro]]
9
10 * [[Order: static versus dynamic|topics/week1 order]]
11
12 * The Lambda Calculus
13
14     * [[Intro to the Lambda Calculus|topics/week2 lambda intro]]
15
16     * [[Advanced notes on the Lambda Calculus|topics/week2 lambda advanced]]
17
18     * Encoding data types in the Lambda Calculus
19
20         * [[Booleans, Tuples, Lists, and Numbers|topics/week2 encodings]] 
21
22 ## Topics by week ##
23
24 Week 1:
25
26 * [[Order in programming languages and natural language|topics/week1 order]]
27 This discussion considers conjunction in a language that recognized presupposition failure.
28 * [[Introduction to functional programming|topics/week1 kapulet intro]]
29 Basics of functional programming: `let`, `case`, pattern matching, and
30 recursion.  Definitions of factorial.
31 * [[Advanced notes on functional programming|topics/week1 kapulet advanced]]
32 * [[Homework for week 1|exercises/assignment1]]
33
34 Week 2:
35
36 * [[Introduction to the Lambda Calculus|topics/week2 lambda intro]]
37 * [[Advanced notes on the Lambda Calculus|topics/week2 lambda advanced]]
38 * [[Encoding Booleans, Tuples, Lists, and Numbers|topics/week2 encodings]];
39 * [[Homework for week 2|exercises/assignment2]]
40
41 Week 3:
42
43 * More on Lists
44 Introduces list comprehensions, shows how to encode `tail` in the Lambda Calculus
45 * Combinatorial Logic
46 * Homework for week 3
47
48
49
50 *More coming, please wait...*
51