Quick refresh of frontpage
[lambda.git] / index.mdwn
index d75578c..f37eaeb 100644 (file)
@@ -2,61 +2,17 @@
 
 or: **What Philosophers and Linguists Can Learn From Theoretical Computer Science But Didn't Know To Ask**
 
-This course will be co-taught by [Chris Barker](http://homepages.nyu.edu/~cb125/) and [Jim Pryor](http://www.jimpryor.net/). Linguistics calls it "G61.3340-002" and Philosophy calls it "G83.2296-001."
-
-
-## Announcements ##
-
-The seminar meets on Mondays from 4-6, in 
+This course is co-taught by [Chris Barker](http://homepages.nyu.edu/~cb125/) and [Jim Pryor](http://www.jimpryor.net/). Linguistics calls it "G61.3340" and Philosophy calls it "G83.2296"
+The seminar meets in spring 2015 on Thursdays from 4-7, in 
 the Linguistics building at 10 Washington Place, in room 104 (back of the first floor).
 
-One student session will be held every Wednesday from 3-4. The other will be arranged to fit the schedule of those who'd like to attend but can't make the Wednesday time. (We first proposed Tuesdays from 11-12, but this time turns out not to be so helpful.) If you're one of the students who wants to meet for Q&A at some other time in the week, let us know.
-
-You should see the student sessions as opportunities to clear up lingering issues from material we've discussed, and help get a better footing for what we'll be doing the next week. It would be smart to make a serious start on that week's homework, for instance, before the session.
-
-There is now a [[lambda evaluator]] you can use in your browser (no need to install any software).
-It can help you check whether your answer to some of the homework questions works correctly.
-
-There is now a [library](/lambda_library) of lambda-calculus arithmetical and list operations, some relatively advanced.
-
-There's also a page of [advanced challenges and techniques](/lambda_advanced) for the untyped lambda-calculus.
-
-
 <!--
-  To play around with a **typed lambda calculus**, which we'll look at later
-  in the course, have a look at the [Penn Lambda Calculator](http://www.ling.upenn.edu/lambda/).
-  This requires installing Java, but provides a number of tools for evaluating
-  lambda expressions and other linguistic forms. (Mac users will most likely
-  already have Java installed.)
--->
-
-
-## Lecture Notes and Assignments ##
-
-(13 Sept) Lecture notes for [[Week1]]; [[Assignment1]].
-
-Topics: Applications; Basics of Lambda Calculus; Comparing Different Languages
-
-(20 Sept) Lecture notes for [[Week2]]; [[Assignment2]].
-
-Topics: Reduction and Convertibility; Combinators; Evaluation Strategies and Normalization; Decidability; Lists and Numbers
-
-(27 Sept) Lecture notes for [[Week3]];  [[Assignment3]].
-
-Topics: Recursion with Fixed Point Combinators
-
-(4 Oct) Lecture notes for Week 4
-
-<!-- Introducing the notion of a "continuation", which technique we'll now already have used a few times
+One student session will be held every Wednesday from 3-4 on the
+fourth floor at 10 Washington Place.
 -->
 
-[[Upcoming topics]]
-
-
-##[[Offsite Reading]]##
-
-There's lots of links here already to tutorials and encyclopedia entries about many of the notions we'll be dealing with.
 
+## Announcements ##
 
 
 ## Course Overview ##
@@ -66,6 +22,7 @@ theoretical computer science and show how they can provide insight
 into established philosophical and linguistic problems.
 
 This is not a seminar about any particular technology or software.
+
 Rather, it's about a variety of conceptual/logical ideas that have been
 developed in computer science and that linguists and philosophers ought to
 know, or may already be unknowingly trying to reinvent.
@@ -96,11 +53,14 @@ especially in the fields of functional programming and type theory.
 
 Of necessity, this course will lay a lot of logical groundwork. But throughout
 we'll be aiming to mix that groundwork with real cases
-in our home subjects where these tools play central roles. Our aim for the
+in our home subjects where these tools play central roles.
+
+Our aim for the
 course is to enable you to make these tools your own; to have enough
 understanding of them to recognize them in use, use them yourself at least
 in simple ways, and to be able to read more about them when appropriate.
 
+<!--
 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,
@@ -118,7 +78,6 @@ The logical systems we'll be looking at include:
 *      if time permits, "indeterministic" or "preemptively parallel" computation and linear logic
 
 
-<!--
 Other keywords:
        recursion using the Y-combinator
        evaluation-order stratgies
@@ -140,6 +99,7 @@ it will not be especially well-suited to be a first graduate-level course
 in formal semantics or philosophy of language. If you have concerns about your
 background, come discuss them with us.
 
+<!--
 This class will count as satisfying the logic requirement for Philosophy
 PhD students; however if this would be your first or only serious
 engagement with graduate-level formal work you should consider
@@ -147,7 +107,7 @@ carefully, and must discuss with us, (1) whether you'll be adequately
 prepared for this course, and (2) whether you'd be better served by
 taking a logic course (at a neighboring department, or at NYU next year)
 with a more canonical syllabus.
-
+-->
 
 Faculty and students from outside of NYU Linguistics and Philosophy are welcome
 to audit, to the extent that this coheres well with the needs of our local
@@ -186,10 +146,20 @@ other. But these languages also have a lot in common, and if you're
 familiar with one of them, it's not difficult to move between it and the
 other.
 
+<!--
+<a name=installing></a>
 [[How to get the programming languages running on your computer]]
 
 [[Family tree of functional programming languages]]
 
+[[Translating between OCaml Scheme and Haskell]]
+
+## What is Functional Programming? ##
+
+Here's a [survey conducted at Microsoft](http://research.microsoft.com/apps/pubs/default.aspx?id=141506) asking programmers what they understand "functional programming" to be. Don't take their responses to be authoritative... this is a just a "man in the street" (seat?) poll.
+
+Read more about the [uptake of Haskell](http://steve-yegge.blogspot.com/2010/12/haskell-researchers-announce-discovery.html) among programmers in the street.
+-->
 
 ## Recommended Books ##
 
@@ -197,15 +167,16 @@ It's not necessary to purchase these for the class. But they are good ways to ge
 
 *      *An Introduction to Lambda Calculi for Computer Scientists*, by Chris
 Hankin, currently $17 on
-[Amazon](http://www.amazon.com/Introduction-Lambda-Calculi-Computer-Scientists/dp/0954300653).
+[Amazon](http://www.amazon.com/dp/0954300653).
 
 *      (Another good book covering the same ground as the Hankin book, but
 more thoroughly, and in a more mathematical style, is *Lambda-Calculus and Combinators:
-an Introduction*, by J. Roger Hindley and Jonathan P. Seldin. If you choose to read
+an Introduction*, by J. Roger Hindley and Jonathan P. Seldin, currently $52 on [Amazon](http://www.amazon.com/dp/0521898854). If you choose to read
 both the Hankin book and this book, you'll notice the authors made some different
 terminological/notational choices. At first, this makes comprehension slightly slower,
 but in the long run it's helpful because it makes the arbitrariness of those choices more salient.)
 
+*      (Another good book, covering some of the same ground as the previous two, but also delving much deeper into typed lambda calculi, is *Types and Programming Languages*, by Benjamin Pierce, currently $61 on [Amazon](http://www.amazon.com/dp/0262162091). This book has many examples in OCaml.)
 
 *   *The Little Schemer, Fourth Edition*, by Daniel P. Friedman and Matthias
 Felleisen, currently $23 on [Amazon](http://www.amazon.com/exec/obidos/ASIN/0262560992).
@@ -227,12 +198,10 @@ superficial syntactic differences between these languages. [Here's a translation
 manual between them](http://www.mpi-sws.org/~rossberg/sml-vs-ocaml.html).
 
 
-
 ----
 
 All wikis are supposed to have a [[SandBox]], so this one does too.
 
 This wiki is powered by [[ikiwiki]].
 
-[[Test]]