
6 Feb
2008
6 Feb
'08
7:04 a.m.
On Feb 6, 2008 11:32 AM, Bas van Dijk
The following obviously doesn't work:
inv m = (m >> mzero) `mplus` return ()
because it will always return ().
How about: inv m = do success <- (m >> return True) `mplus` return False if success then mzero else return () Luke