X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?a=blobdiff_plain;f=exercises%2Fassignment8-9.mdwn;h=8eb4bc7afc9d95a8e8a1c484fac196843c01d5c2;hb=78383c2fd7b5c68f2904eb735a5b59b573441450;hp=e6d24837152d055c60418c522bf980dd800a13b1;hpb=755e7f11f14529f8197e2823acf73746dec0c393;p=lambda.git diff --git a/exercises/assignment8-9.mdwn b/exercises/assignment8-9.mdwn index e6d24837..8eb4bc7a 100644 --- a/exercises/assignment8-9.mdwn +++ b/exercises/assignment8-9.mdwn @@ -137,7 +137,7 @@ Return to the original code (that is, before the modifications required by the p -- substitute your own choices for the type Env and value env0 let { xx :: ReaderT Env Maybe Int; xx = return 1 } in runReaderT xx env0 - Okay, here are some questions about various monad transformers. Use OCaml to help you answer them. Which combined monad has the type of an optional list (that is, either `None` or `Some [...]`): an Option transformer wrapped around an underlying List monad, or a List transformer wrapped around an underlying Option monad? Which combined monad has the type of a function from `store`s to a pair `('a list, store)`: a List transformer wrapped around an underlying State monad or a State transformer wrapped around an underlying List monad? + Okay, here are some questions about various monad transformers. Use OCaml or Haskell to help you answer them. Which combined monad has the type of an optional list (that is, either `None` or `Some [...]`): an Option transformer wrapped around an underlying List monad, or a List transformer wrapped around an underlying Option monad? Which combined monad has the type of a function from `store`s to a pair `('a list, store)`: a List transformer wrapped around an underlying State monad or a State transformer wrapped around an underlying List monad? The last two problems are non-monadic.