Monad Transformers step by step
[lambda.git] / topics / week8_safe_division_with_monads.mdwn
index 3e3e14c..933ded8 100644 (file)
@@ -217,7 +217,7 @@ Wherever we have a well-defined monad, we can define the `mapN` operations for t
 of their `>>=` and `⇧`/`mid`. The general pattern is:
 
     mapN (g : 'a1 -> ... 'an -> 'result) (u1 : 'a1 option) ... (un : 'an option) : 'result option =
-      u1 >>= (fun x1 -> ... un >>= (fun xn -> ⇧ (g x1 ... xn)) ...)
+      u1 >>= (fun x1 -> ... un >>= (fun xn -> ⇧(g x1 ... xn)) ...)
 
 Our above definitions of `map` and `mapN` were of this form, except we just
 explicitly supplied the definition of `⇧` for the Option/Maybe monad (namely, in OCamlese, the constructor `Some`).