tweak monad_library
authorJim Pryor <profjim@jimpryor.net>
Sun, 12 Dec 2010 14:39:21 +0000 (09:39 -0500)
committerJim Pryor <profjim@jimpryor.net>
Sun, 12 Dec 2010 14:39:21 +0000 (09:39 -0500)
Signed-off-by: Jim Pryor <profjim@jimpryor.net>
monad_library.mdwn

index 398f2e5..d7f899a 100644 (file)
@@ -80,17 +80,17 @@ Some comments on the design of this library.
 
 *      The monads available are:
 
 
 *      The monads available are:
 
-       *       Identity_monad
-       *       Maybe_monad
-       *       List_monad
-       *       Reader_monad (has to be parameterized as above)
-       *       State_monad (has to be parameterized as above)
-       *       Ref_monad (a version of State_monad with a structured store, and custom operations for creating new cells in the store, and getting or changing the values of existing cells)
-       *       Writer_monad (has to be parameterized on the type of the written data; use Writer1 as a simple predefined case)
-       *       Error_monad, with `throw err` and `catch u handler_function` operations (this has to be parameterized on the type of `err`; use Failure as a simple predefined case, where `type err = string`)
-       *       IO_monad (you don't need this in OCaml, but it works analagously to the IO monad in Haskell, so it's handy for working with Haskell-written algorithms in OCaml)
-       *       Leaf_monad (leaf-labeled, binary trees)
-       *       and of course, Continuation_monad, with `callcc`, `reset`, `shift` and `abort` operations.
+       *       `Identity_monad`
+       *       `Maybe_monad`
+       *       `List_monad`
+       *       `Reader_monad` (has to be parameterized as above)
+       *       `State_monad` (has to be parameterized as above)
+       *       `Ref_monad` (a version of `State_monad` with a structured store, and custom operations for creating new cells in the store, and getting or changing the values of existing cells)
+       *       `Writer_monad` (has to be parameterized on the type of the written data; use `Writer1` as a simple predefined case)
+       *       `Error_monad`, with `throw err` and `catch u handler_function` operations (this has to be parameterized on the type of `err`; use `Failure` as a simple predefined case, where `type err = string`)
+       *       `IO_monad` (you don't need this in OCaml, but it works analagously to the `IO` monad in Haskell, so it's handy for working with Haskell-written algorithms in OCaml)
+       *       `Leaf_monad` (leaf-labeled, binary trees)
+       *       and of course, `Continuation_monad`, with `callcc`, `reset`, `shift` and `abort` operations.
 
 *      All of these monads come with [[monad transformers]] too. To get a State monad wrapped around a Maybe monad, do this:
 
 
 *      All of these monads come with [[monad transformers]] too. To get a State monad wrapped around a Maybe monad, do this: