Monad Transformers step by step
[lambda.git] / index.mdwn
index a71eb4d..c4c3e43 100644 (file)
@@ -137,7 +137,7 @@ Towards types (in progress);
 [[System F|topics/week5 system F]];
 Types in OCaml and Haskell (will be posted someday);
 Practical advice for working with OCaml and/or Haskell (will be posted someday);
-[[Homework|exercises/assignment5]]
+[[Homework|exercises/assignment5-6]]
 
 > *There is some assigned reading for our next meeting.* This comes in two batches. The first batch consists of [[this footnote|readings/kaplan-plexy.pdf]] from Kaplan's *Demonstratives*. Also recommended, but not mandatory, is [[this selection|readings/king-on-schiffer.pdf]] from Chapter 4 of Jeff King's 2007 book *The Nature and Structure of Content*. The second batch consists of [[this paper|readings/rieppel-beingsthg.pdf]] from Michael Rieppel, a recent Berkeley Philosophy PhD, on Frege's "concept horse" problem. Also recommended, but not mandatory, is [[this selection|readings/king-on-logicism.pdf]] from Chapter 5 of King's book. (It reviews and elaborates his paper "[Designating propositions](http://philpapers.org/rec/KINDP)".)
 
@@ -159,31 +159,33 @@ Practical advice for working with OCaml and/or Haskell (will be posted someday);
 
 > Topics: [[Combinatory evaluator|topics/week7_combinatory_evaluator]]; [[Introducing Monads|topics/week7_introducing_monads]]; [[Homework|exercises/assignment7]]; [[Environments and Closures|topics/week7_environments_and_closures]]; [[Untyped lambda evaluator|topics/week7_untyped_evaluator]]
 
-> We posted answers to [[Week 4's homework|exercises/assignment4_answers]] and [[Week 5-6's homework|exercises/assignment5_answers]].
+> We posted answers to [[Week 4's homework|exercises/assignment4_answers]] and [[Week 5-6's homework|exercises/assignment5-6_answers]].
 
 
 (**Week 8**) Thursday March 26
-> Topics: [[Safe division with monads|topics/week8_safe_division_with_monads]]; [[Long but useful ramble|topics/week8_ramble]]
+> Topics: [[Safe division with monads|topics/week8_safe_division_with_monads]]; [[Reader Monad|/topics/week8_reader_monad]]; [[Ramble on Monads and Modules|topics/week8_monads_and_modules]] (*the latter two were posted/updated on April 5-6*)
 
 (**Week 9**) Thursday April 2
-> Topics: [[Using the OCaml Monad library|/topics/week9_using_monad_library]]; the State monad; Programming with mutable state; Using multiple monads together
 
-> Here are some OCaml libraries: [[Juli8|code/juli8.ml]] and [[Monad|code/monad.ml]]. We'll write up explanations of these soon. But quickly, before you `#use "juli8.ml"`, you have to run this in your OCaml session. (I have these lines in my `~/.ocamlinit` file, so they run every time OCaml starts up:
+> Updated notes on [[Installing and Using the Juli8 Libraries|/juli8]] on Sun 5 April. Continued to fix some bugs and improve the monad transformers. Latest version posted Monday evening, 13 April: [[v1.6|/code/Juli8-v1.6.tgz]]. This version is needed to run [[the gsv2.ml code|/code/gsv2.ml]].
 
->     #load "str.cma";;
->     module Std = struct
->       include Pervasives
->       module List = List
->       module Random = Random
->       module String = String
->     end
+<!--
+The major change is to make the Monad libraries easier to use. Now you can just use `Monad.Reader(struct type env = ... end)`; you don't need to furthermore ask for the `M` submodule of that generated module. Relatedly, the `List` and `Monad.List` modules are now different; the former has lots of list-related functions and the latter only the monadic interface. Similarly for `Option` and `Monad.Option`.
+-->
+
+> Topics: [[Using the OCaml Monad library|/topics/week9_using_the_monad_library]]; [[Programming with mutable state|/topics/week9_mutable_state]]; [[A State Monad Tutorial|/topics/week9_state_monad_tutorial]]; [[Using multiple monads together|/topics/week9_monad_transformers]]; [[Homework for weeks 8-9|/exercises/assignment8-9]]
 
+> Reading for Week 10: Groenendijk, Stokhof, and Veltman, "[[Coreference and Modality|/readings/coreference-and-modality.pdf]]" (1996)
 
 <!--
-We've added a [[Monad Library]] for OCaml.
 We've posted a [[State Monad Tutorial]].
 -->
 
+(**Week 10**) Thursday April 9
+
+> Topics: We will be discussing the reading posted above. Here are [[notes and links to code|/topics/week10_gsv]].
+
+
 
 ## Course Overview ##