X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=overview.mdwn;h=d90768af1561e5ac69364fee33f60b9cc7ea7bae;hp=d39096446a30c06c31e2050ba0b93cdb792fd392;hb=fac1570c5e308143c929a1a0c686d4a45ccaae61;hpb=2ce9f23d4fc22497ed371d6fe11eed9ade61c8ab diff --git a/overview.mdwn b/overview.mdwn index d3909644..d90768af 100644 --- a/overview.mdwn +++ b/overview.mdwn @@ -5,7 +5,7 @@ This page aims to summarize the major "topics" (bits of conceptual technology) t * Basics of (especially "functional"-style) programming: including pattern matching, recursive definitions, abstract datatypes, **modularity, separating interfaces from implementation** * The syntax and proof theory of the untyped lambda calculus; at least some discussion of its semantics * Different **evaluation-order strategies** for formal systems, different "normalizing" properties -* Combinatorial logic, or the dispensability of variables +* Combinatory logic, or the dispensability of variables * Recursive definitions and recursive types, fixed-point combinators * Other **type sophistication**: abstract datatypes, polymorphic types, perhaps dependent types * **Mutation** and imperative/iterative idioms @@ -45,7 +45,7 @@ discussing this in much more detail as the course proceeds. The logical systems we'll be looking at include: * the so-called "pure" or untyped (monotyped?) lambda calculus -* combinatorial logic +* combinatory logic * the simply-typed lambda calculus * polymorphic types with System F