Bas van Dijk wrote:
The following obviously doesn't work:

import Control.Monad.Error

inv :: MonadError e m => m a -> m ()
inv m = (m >> fail "") `catchError` \_ -> (return ())

What about this?

inv :: MonadError e m => m a -> m ()
inv m = join $ (m >> return mzero) `catchError` \_ -> return (return ())

  Tillmann
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to