Exceptions

John Meacham john at repetae.net
Tue Apr 11 08:35:12 EDT 2006


On Tue, Apr 11, 2006 at 01:24:07PM +0100, Simon Marlow wrote:
> Attached is another variant of the extensible exceptions idea, it
> improves on the previous designs in a couple of ways:  there's only one
> catch & throw, regardless of what type you're throwing or catching.
> There is an extensible hierarchy of exceptions, and you can catch and
> re-throw subclasses of exceptions.

I made the catch and throw separate so the decision as to whether to
include imprecice exceptions and extensible extensions can be made
independently.  

that and

throw x /= ioError x

ioError x >> return ()  -> IO _|_  (only _|_ when IO action executed)
throw x >> return () -> _|_

ioError x `seq` ()  -> ()
throw x `seq` () -> _|_

        John

-- 
John Meacham - ⑆repetae.net⑆john⑈


More information about the Haskell-prime mailing list