adjustments, notes week 1
[lambda.git] / _topics_and_themes.mdwn
diff --git a/_topics_and_themes.mdwn b/_topics_and_themes.mdwn
new file mode 100644 (file)
index 0000000..6b4c55f
--- /dev/null
@@ -0,0 +1,50 @@
+# Topics #
+
+These topics are organized in two ways: by their content, and by the
+week in which they were introduced.
+
+## Topics by content ##
+
+* [[Basics of functional programming|topics/week1]]
+
+* [[Order: static versus dynamic|topics/week1 order]]
+
+## Topics by week ##
+
+Week 1: 
+
+* [[Order in programming languages and natural language|topics/order]]
+This discussion considers conjunction in a language that recognized presupposition failure.
+* [[Introduction to functional programming|topics/week1]]
+Basics of functional programming: `let`, `case`, pattern matching, and
+recursion.  Definitions of factorial.
+* [[Homework for week 1|exercises/assignment1]]
+* [[Advanced notes|week1 advanced notes]] 
+
+*More coming, please wait...*
+
+<!--
+Once we get up and running, the central focii of the course will be
+**continuations**, **types**, and **monads**. One of the on-going themes will
+concern evaluation order and issues about how computations (inferences,
+derivations) unfold in (for instance) time.  The key analytic technique is to
+form a static, order-independent model of a dynamic process. We'll be
+discussing this in much more detail as the course proceeds.
+
+The logical systems we'll be looking at include:
+
+*      the "pure"/untyped lambda calculus
+*      combinatorial logic
+*      the simply-typed lambda calculus
+*      polymorphic types with System F
+*      some discussion of dependent types
+*      if time permits, "indeterministic" or "preemptively parallel" computation and linear logic
+
+
+Other keywords:
+       recursion using the Y-combinator
+       evaluation-order stratgies
+       normalizing properties
+       the Curry-Howard isomorphism(s)
+       monads in category theory and computation
+-->