-## More on the "pure" or untyped lambda calculus ##
-
-1. Eta reduction and "extensionality"
-1. Different evaluation strategies (call by name, call by value, etc.)
-1. Strongly normalizing vs weakly normalizing vs non-normalizing; Church-Rosser Theorem(s)
-1. Lambda calculus compared to combinatorial logic<p>
-1. Church-like encodings of numbers, defining addition and multiplication
-1. Defining the predecessor function; alternate encodings for the numbers
-1. Homogeneous sequences or "lists"; how they differ from pairs, triples, etc.
-1. Representing lists as pairs
-1. Representing lists as folds
-1. Typical higher-order functions: map, filter, fold<p>
-1. Recursion exploiting the fold-like representation of numbers and lists ([[!wikipedia Deforestation (computer science)]], [[!wikipedia Zipper (data structure)]])
-1. General recursion using omega
-1. The Y combinator(s); more on evaluation strategies<p>
-1. Introducing the notion of a "continuation", which technique we'll now already have used a few times
-