
Hi,
I am trying to catch an "thread blocked on MVar indefinitely exception." Of course I can use ::SomeException as explained in http://hackage.haskell.org/ packages/archive/base/latest/doc/html/Control-Exception.html#g:3 but there is no explanation as to how to find the more case specific exceptions. http://hackage.haskell.org/packages/archive/base/latest/doc/html/Control- Concurrent-MVar.html#t:MVar does not discuss exceptions at all! Indeed, I don't know of any haddock pages that include descriptions of exception types :( :O
In this particular case it's easy: http://hackage.haskell.org/packages/archive/base/4.6.0.0/doc/html/Control-Ex... But in general, figuring out the exception type is not straight forward. Personally, I think an uncaught exception should print the type of that exception (e.g. use a derived show instance). But most of them have a show instance that is useful for end-users. The upcoming 1.4.0 release of Hspec will print the type of uncaught exceptions in test cases. So if you are into BDD/TDD that might be useful;) Cheers, Simon