Merged Chris and Jim's work on front page
[lambda.git] / index.mdwn
index c581a3e..447aa7c 100644 (file)
@@ -12,6 +12,21 @@ One student session will be held every Wednesday from XX-YY at WHERE.
 
 ## [[Jump to content (lecture notes and more)|topics_and_themes.mdwn]] ##
 
+<!--
+See [below](#installing) for how to get the programming languages running on your computer.
+
+*      Links for help [[learning Scheme]]
+*      Links for help [[learning OCaml]]
+*      [[Translating between OCaml Scheme and Haskell]]
+
+[[Lambda Evaluator]]: Usable in your browser. It can help you check whether your answer to some of the homework questions works correctly. There is also now a [library](/lambda_library) of lambda-calculus arithmetical and list operations, some relatively advanced.
+
+*      We've added a [[Monad Library]] for OCaml.
+*      We've posted a [[State Monad Tutorial]].
+
+##[[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 ##
 
@@ -179,6 +194,13 @@ strictly exclusive. The labels are better thought of as concerning different
 of the extent to which they emphasize, and are designed around those idioms. Languages like Python and JavaScript are sometimes themselves
 described as "more functional" than other languages, like C.
 
+<!--
+## 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.
+-->
 
 In any case, here is some more context for the three languages we will be focusing on.
 
@@ -192,6 +214,8 @@ the operating system differently. One major implementation is called Racket,
 and that is what we recommend you use. If you're already using or comfortable with
 another Scheme implementation, though, there's no compelling reason to switch.
 
+    <!-- Racket doesn't have R7RS-small, and won't anytime soon. :-( Perhaps prefer Chicken? -->
+
     Racket stands to Scheme in something like the relation Firefox stands to HTML.
 
     (Wikipedia on [Lisp](http://en.wikipedia.org/wiki/Lisp_%28programming_language%29),
@@ -224,6 +248,14 @@ 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]]
+
+Links to tutorials?
+-->
+
 
 ## Recommended Books ##
 
@@ -268,6 +300,8 @@ but in the long run it's helpful because it makes the arbitrariness of those cho
 
 *   Another good book, covering some of the same ground as the Hankin, and the Hindley &amp; Seldin, but delving deeper into typed lambda calculi, is *Types and Programming Languages*, by Benjamin Pierce, currently $77 hardback / $68 kindle on [Amazon](http://www.amazon.com/dp/0262162091). This book has many examples in OCaml.
 
+<!-- Links to online books and tutorials about programming in Scheme and other languages -->
+
 
 ----