2

dynApplyfrom函数Data.Dynamics看起来很不错,但实际上它需要一个单态函数类型。所以,你不能写

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是具体类型)。提前致谢。

4

1 回答 1

3

不,多态函数与Data.Dynamic. 要做到这一点,需要多态Data.Typeable和在运行时使用类型检查器。

但是,此功能有一张票:Polymorphic Data.Dynamic

于 2012-01-17T02:46:33.823 回答