来自 Data.Dynamics
的函数 dynApply
看起来非常好,但实际上它需要单态函数类型。所以,你不能写
dynApply (toDyn id) (toDyn 3)
我有一些需要多态返回类型的代码。它们的形式受到限制,例如功能
forall t. (a -> t) -> t
forall t. (a -> t) -> b -> t
forall t. (a -> t) -> b -> c -> t
...
(其中 a
、b
、c
是具体类型)。提前致谢。
最佳答案
不,多态函数与Data.Dynamic
不兼容。为此,需要多态 Data.Typeable
并在运行时使用类型检查器。
但是,此功能有一张票:Polymorphic Data.Dynamic
关于haskell - 有什么解决方法可以在 Data.Dynamics 中获取多态函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8888837/