merged in overview
authorJim Pryor <profjim@jimpryor.net>
Mon, 23 Aug 2010 16:34:19 +0000 (12:34 -0400)
committerJim Pryor <profjim@jimpryor.net>
Mon, 23 Aug 2010 16:34:19 +0000 (12:34 -0400)
Signed-off-by: Jim Pryor <profjim@jimpryor.net>
index.mdwn

index b8efb1f..53c7b58 100644 (file)
-Welcome to your new wiki.
+Philosophy COURSENUMBER and Linguistics COURSENUMBER
+SHORT COURSE TITLE?
 
 
-1. [[How to get the programming languages running on your computer]]
+or: **What Philosophers and Linguists Can Learn From Theoretical Computer Science But Didn't Know To Ask**
 
 
-Some programming resources:
+## Announcements ##
 
 
-Books:
+The course meets starting on XXX, at ZZZ, in room YYY.
+
+
+## Overview ##
+
+The goal of this seminar is to introduce concepts and techniques from
+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.
+
+Philosphers and linguists tend to reuse the same familiar tools in
+ever more (sometime spectacularly) creative ways.  But when your only
+hammer is classical logic, every problem looks like modus ponens.  In
+contrast, computer scientists have invested considerable ingenuity in
+studying tool design, and have made remarkable progress.
+
+"Why shouldn't I reinvent some idea X for myself? It's intellectually
+rewarding!" Yes it is, but it also takes time you might have better
+spent elsewhere. After all, you can get anywhere you want to go by walking, but you can
+accomplish more with a combination of walking and strategic subway
+rides.
+
+More importantly, the idiosyncrasies of your particular
+implementation may obscure what's fundamental to the idea you're
+working with. Your implementation may be buggy in corner cases you
+didn't think of; it may be incomplete and not trivial to generalize; its
+connection to existing literature and neighboring issues may go
+unnoticed. For all these reasons you're better off understanding the
+state of the art.
+
+The theoretical tools we'll be introducing aren't very familiar to
+everyday programmers, but they are prominent in academic computer science,
+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
+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,
+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
+-->
+       
+## Who Can Participate? ##
+
+The course will not presume previous experience with programming.  We
+will, however, discuss concepts embodied in specific programming
+languages, and we will encourage experimentation with running,
+modifying, and writing computer programs.
+
+The course will not presume lots of mathematical or logical background, either.
+However, it will demand a certain amount of comfort working with such material.
+And it wouldn't 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.
+
+It hasn't yet been decided whether this course counts for satisfying the logic requirement for 
+Philosophy PhD students.
+
+Faculty and students from outside of NYU Linguistics and Philosophy are wlecome
+to audit, to the extent that this coheres well with the needs of our local
+students.
+
+
+## Recommended Readings and Software ##
 
    *The Little Schemer, Fourth Edition*, by Daniel P. Friedman and Matthias Felleisen, currently $23 on [Amazon](http://www.amazon.com/exec/obidos/ASIN/0262560992/ref=pd_sim_books/103-5471398-9229403#reader_0262560992).
 This is a classic text introducing the gentle art of programming, using the functional programming language Scheme.
 
    *The Little Schemer, Fourth Edition*, by Daniel P. Friedman and Matthias Felleisen, currently $23 on [Amazon](http://www.amazon.com/exec/obidos/ASIN/0262560992/ref=pd_sim_books/103-5471398-9229403#reader_0262560992).
 This is a classic text introducing the gentle art of programming, using the functional programming language Scheme.
@@ -12,6 +105,13 @@ Many people love this book, but it has an unusual dialog format that is not to e
 **Of particular interest for this course** is the explanation of the Y combinator, available as a free sample chapter 
 [at the MIT Press web page for the book](http://www.ccs.neu.edu/home/matthias/BTLS/).
 
 **Of particular interest for this course** is the explanation of the Y combinator, available as a free sample chapter 
 [at the MIT Press web page for the book](http://www.ccs.neu.edu/home/matthias/BTLS/).
 
+       [[How to get the programming languages running on your computer]]
+
+## Schedule of Topics ##
+
+To be added.
+
+----
 
 All wikis are supposed to have a [[SandBox]], so this one does too.
 
 
 All wikis are supposed to have a [[SandBox]], so this one does too.