
9 Oct
2008
9 Oct
'08
2:20 p.m.
Daryoush Mehrtash wrote:
Assuming A, B, C are monadic operation. How do you read the following function:
do A 'mplus' B C
I expect this to translate to:
(A 'mplus' B) >>= C
It translates to (A `mplus` B) >> C
Can I then say it is equivalent to:
(A >>=C) mplus (B >>=C)
Sounds like a desirable law, but it doesn't always hold. See also http://www.haskell.org/haskellwiki/MonadPlus Currently, there's no consensus concerning the laws that MonadPlus should obey. Regards, apfelmus