> Prelude Control.Exception> r <- try (return $ error "bam") :: IO (Either > SomeException Int) Prelude Control.Exception> r > Right *** Exception: bam Wow, this is realy breaking news for me. Where can i read more about this magic ?