[Haskell-cafe] Re: how do you deal with mplus?
apfelmus
apfelmus at quantentunnel.de
Thu Oct 9 14:20:04 EDT 2008
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
More information about the Haskell-Cafe
mailing list