Haskell 在后ghc-7.6.1世界中,DynamicException的等价物是什么?

Haskell 在后ghc-7.6.1世界中,DynamicException的等价物是什么?,haskell,ghc,Haskell,Ghc,DynamicException和throwDyn和throwDynTo过去位于控制.OldException模块中。现在,OldException已经永远消失了,依赖它的包也被破坏了 在ExtensibleException包或其他地方是否存在与DynamicException等价的功能?我想不做任何改动 背景:我正试图用GHC7.6.1构建lambdabot。损坏的文件是lambdabot utils中的Signal.hs 更新是否有关于将旧异常代码移植到新的可扩展异常的指南lambdabo

DynamicException
throwDyn
throwDynTo
过去位于
控制.OldException
模块中。现在,
OldException
已经永远消失了,依赖它的包也被破坏了

ExtensibleException
包或其他地方是否存在与
DynamicException
等价的功能?我想不做任何改动

背景:我正试图用GHC7.6.1构建lambdabot。损坏的文件是
lambdabot utils
中的
Signal.hs


更新是否有关于将旧异常代码移植到新的可扩展异常的指南
lambdabot
在多个地方使用了
OldException
,似乎不可能快速修复。

这些函数在新的
控件中的等价物。Exception
只是
抛出
抛出
捕获
,就像
控件一样。默认情况下,Exception
支持动态异常

旧接口和新接口之间的主要区别在于,这些函数具有
异常
约束,而不是
可键入
。但是,在大多数情况下,默认实现已经足够好了,因此您只需为要使用的类型声明
Exception
实例,例如

instance Exception Foo

为什么不干脆控制异常呢?它支持将任意类型的异常作为数据。谢谢,simple
throwTo
可以工作。我以前从未使用过异常,所以我在这里有点迷茫。例如,如何处理旧的
异常
数据类型?@n.m.基本上,旧的
异常
类型的每个构造函数现在都对应于一个单独的类型,并且动态捕获所有异常。我写的可能对你有帮助。谢谢,我会试试看!