projects
/
lambda.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
29fb3ed
)
formating
author
jim
<jim@web>
Mon, 23 Mar 2015 14:18:51 +0000
(10:18 -0400)
committer
Linux User
<ikiwiki@localhost.members.linode.com>
Mon, 23 Mar 2015 14:18:51 +0000
(10:18 -0400)
topics/week8_safe_division_with_monads.mdwn
patch
|
blob
|
history
diff --git
a/topics/week8_safe_division_with_monads.mdwn
b/topics/week8_safe_division_with_monads.mdwn
index
3e3e14c
..
933ded8
100644
(file)
--- a/
topics/week8_safe_division_with_monads.mdwn
+++ b/
topics/week8_safe_division_with_monads.mdwn
@@
-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`).