
On Sun, Jul 06, 2008 at 05:32:02PM -0400, Isaac Dupree wrote:
I have some trouble seeing from the patches what the hierarchy of exceptions will be;
Right, it's a bit obfuscated at the moment, as some of the types are where we want them to be (portable modules like Control.Exception) while others are where they need to be (GHC.*, to avoid import loops). Hopefully we can improve that later. Anyway, these patches basically only add the machinery for extensible exceptions, but don't define much in the way of a hierarchy themselves. All I've done is to break up the old Extension type: http://www.haskell.org/ghc/docs/latest/html/libraries/base/Control-Exception... e.g. for constructors like ArithException ArithException the ArithException type is an instance of Exception, for constructors like BlockedOnDeadMVar I've made a new type data BlockedOnDeadMVar = BlockedOnDeadMVar that is an instance of Exception, and for constructors like RecConError String I've made a new type data RecConError = RecConError String that is an instance of Exception,
could you describe what the current proposal is for that hierarchy? (if it exists yet)
So it doesn't really exist yet. That can be done later, either all at once or bit by bit. Thanks Ian