
Hi Michael, i need to handle exception on GHandler monad level. We have: *type GHandler sub master = GGHandlerhttp://hackage.haskell.org/packages/archive/yesod-core/0.8.1/doc/html/Yesod-... sub master (Iterateehttp://hackage.haskell.org/packages/archive/enumerator/0.4.10/doc/html/Data-... ByteStringhttp://hackage.haskell.org/packages/archive/bytestring/0.9.1.10/doc/html/Dat... IOhttp://hackage.haskell.org/packages/archive/base/4.3.1.0/doc/html/System-IO.... **)* * *data GGHandler sub master m a ... MonadControlIOhttp://hackage.haskell.org/packages/archive/monad-control/0.2.0.1/doc/html/C... m => MonadControlIOhttp://hackage.haskell.org/packages/archive/monad-control/0.2.0.1/doc/html/C... (GGHandlerhttp://hackage.haskell.org/packages/archive/yesod-core/0.8.1/doc/html/Yesod-... sub master m) *(Iterateehttp://hackage.haskell.org/packages/archive/enumerator/0.4.10/doc/html/Data-... ByteStringhttp://hackage.haskell.org/packages/archive/bytestring/0.9.1.10/doc/html/Dat... IOhttp://hackage.haskell.org/packages/archive/base/4.3.1.0/doc/html/System-IO.... **) have no instance of * MonadControlIOhttp://hackage.haskell.org/packages/archive/monad-control/0.2.0.1/doc/html/C... thus we got error: No instance for (MonadControlIO (Data.Enumerator.Iteratee Data.ByteString.Internal.ByteString IO)) arising from a use of `E.catch' Possible fix: add an instance declaration for (MonadControlIO (Data.Enumerator.Iteratee Data.ByteString.Internal.ByteString IO)) i need something like: * * *function :: Handler (Maybe Int)* *function = do * * res <- E.catch (runDB $ do * * action1* * action2* * ... * * return 1* * )* * (\(e :: E.SomeException) -> return 0)* How i can get this ? Thanks. -- Best regards, Cheshkov Anton Phone: +7 909 005 18 82 Skype: cheshkov_anton