G'day all.
On Feb 6, 2008 12:45 PM, Felipe Lessa <[EMAIL PROTECTED]> wrote:
I guess your parser is a monad transformer, so *maybe* the solution
is to require MonadError from the inner monad.
Quoting Bas van Dijk <[EMAIL PROTECTED]>:
Indeed my parser 'P t m a' is a monad transformer. I will try out
requiring 'm' to have a 'MonadError' constraint and see how far I come
with that.
I've occasionally found this useful:
class (Monad m) => MonadNegate m where
mtrue :: m ()
mfalse :: m ()
mnot :: m a -> m ()
mtrue = return ()
mfalse = fail "False"
Cheers,
Andrew Bromage
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe