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 _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
