[Haskell] Re: generic catch in a MonadIO