Exceptions
John Meacham
john at repetae.net
Fri Apr 7 19:33:48 EDT 2006
On Fri, Apr 07, 2006 at 10:00:21AM -0500, John Goerzen wrote:
> But here's my concern. Let's say that I wanted to, for some reason,
> create a MultiplyByZero exception. It should be broadly considered an
> ArithException, and any code that catches an ArithException should be
> able to catch my MultiplyByZero exception.
>
> But the ArithException type is limited to storing errors that are
> defined by Control.Exception.ArithException. My MultiplyByZero is not
> defined there, so I am out of luck. The best I could do is define a new
> MultiplyByZero, and catch it in my own code. But any code that others
> have written to catch ArithExceptions would be blind to MultiplyByZero.
newtype ArithException a = ArithException a
data DivideByZero
throw (ArithException DivideByZero)
your code:
data MultiplyByZero
throw (ArithException MultiplyByZero)
John
--
John Meacham - ⑆repetae.net⑆john⑈
More information about the Haskell-prime
mailing list