X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=topics%2Fweek9_monad_transformers.mdwn;h=f9da05ad15f24c5c05b08a28e9da8051c96fd951;hp=68ea563cb31ae7de13761c3663e0e1730284fa41;hb=feed9f614fd5e90dc05320b7ae242877665ae4ff;hpb=20c3705983ac428fecca3a33b472431371e6b347 diff --git a/topics/week9_monad_transformers.mdwn b/topics/week9_monad_transformers.mdwn index 68ea563c..f9da05ad 100644 --- a/topics/week9_monad_transformers.mdwn +++ b/topics/week9_monad_transformers.mdwn @@ -165,7 +165,7 @@ When List is on the inside, the failed results just got dropped and the computat On the other hand, when Option is on the inside, as in LO, failures (which we again represent by `mzero`s from the Option monad, not the List monad's own `mzero`; but here since it's the inner monad we need to `hoist Monad.Option.mzero`) abort the whole computation. (If you instead used the List monad's `mzero`, it'd be ignored by `++` and you'd end with just `Some [30]`.) -This is fun. Notice the difference it makes whether the second `++` is native to the outer `Monad.List`, or whether it's the inner `Monad.List`'s `++` hoisted into the outer wrapper: +This is fun. Here is a List around a List. Notice the difference it makes whether the second `++` is native to the outer `Monad.List`, or whether it's the inner `Monad.List`'s `++` hoisted into the outer wrapper: # module LL = Monad.List.T(Monad.List);;