X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=index.mdwn;h=eb46063b2588902030b4725d99507d6364fbfd73;hp=902bb2ee691b6e0ac0e09cdf11a222d457f59aa8;hb=fa7c5a7f1232f472a5cda6c48450fd76fbf9f03a;hpb=b95184644698328730d3ef82aa746aced60e896b diff --git a/index.mdwn b/index.mdwn index 902bb2ee..eb46063b 100644 --- a/index.mdwn +++ b/index.mdwn @@ -10,8 +10,18 @@ fourth floor at 10 Washington Place. ## Announcements ## -* This is the time of the semester when some people start slipping - behind with the homework. Don't. + + +* We've added a page on [[Translating between OCaml Scheme and Haskell]] + +* We've added some [commentary](/hints/assignment_6_commentary) on some common issues in your solutions to [[Assignment6]]. + +* We've added a [[Monad Library]] for OCaml. + +* We've posted a [[State Monad Tutorial]]. [[Older Announcements]] @@ -23,6 +33,8 @@ the homework questions works correctly. There is also now a [library](/lambda_library) of lambda-calculus arithmetical and list operations, some relatively advanced. +##[[Monad Library]]## + ## Lecture Notes and Assignments ## @@ -36,25 +48,46 @@ arithmetical and list operations, some relatively advanced. (27 Sept) Lecture notes for [[Week3]]; [[Assignment3]]; an evaluator with the definitions used for homework 3 -preloaded is available at [[assignment 3 evaluator]]. +preloaded is available at [[assignment 3 evaluator]]. > Topics: [[Evaluation Order]]; Recursion with Fixed Point Combinators (4 Oct) Lecture notes for [[Week4]]; [[Assignment4]]. -> Topics: More on Fixed Points; Sets; Aborting List Traversals; [[Implementing Trees]] +> Topics: More on Fixed Points; Sets; Aborting List Traversals; [[Implementing Trees]] (18 Oct, 25 Oct) Lecture notes for [[Week5]] and [[Week6]]; [[Assignment5]]. -> Topics: Types, Polymorphism, Dividing by Zero +> Topics: Types, Polymorphism, Unit and Bottom + +(1 Nov) Lecture notes for [[Week7]]; [[Assignment6]]. + +> Topics: Monads; [[Reader Monad for Variable Binding]]; [[Reader Monad for Intensionality]] + +(8 Nov) Lecture notes for [[Week8]]. + +> Topics: Reader Monad for Jacobson's Variable-Free Semantics -(1 Nov) Lecture notes for Week7; Assignment6. +(15 Nov) Lecture notes for [[Week9]]; [[Assignment7]]. Everyone auditing in the class is encouraged to do this assignment, or at least work through the substantial "hints". -> Topics: Monads +> Topics: Mutable Variables; Passing by Reference; [[State Monad Tutorial]] (added recently) +(22 Nov) Lecture notes for [[Week10]] -[[Upcoming topics]] +> Topics: Calculator Improvements, including mutation + +(30 Nov) Lecture notes for [[Week11]]; [[Assignment8]]. + +> Topics: [[Tree and List Zippers]]; [[Coroutines and Aborts]]; [[From List Zippers to Continuations]] + +(6 Dec) Lecture notes for [[Week12]]; [[Assignment9]]. + +> Topics: [[List Monad as Continuation Monad]]; [[Manipulating Trees with Monads]] (updated); [[Monad Transformers]] (added recently) + +(13 Dec) Lecture notes for Week13; [[Assignment10]]. + +> Topics: [[CPS and Continuation Operators]]; Curry-Howard [[Advanced Topics]] @@ -68,6 +101,8 @@ See [below](#installing) for how to get the programming languages running on you * Links for help [[learning OCaml]] +* [[Translating between OCaml Scheme and Haskell]] + ##[[Offsite Reading]]## @@ -207,6 +242,12 @@ other. [[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. + ## Recommended Books ##