我们如何在Haskell中模拟可变参数模板?

时间:2015-03-21 07:45:47

标签: haskell

在C ++中,我们可以定义一个函数,它使用variadic templates来获取可变数量的静态类型参数,如下所示:

template<typename... Params> void f(Params... parameters);

(或者我们可以创建一个具有可变数量字段的结构,并将其用作f的参数。)

我们还可以使用类型特征来检查值。我想在Haskell中做类似的事情。

我希望使用参数化数量的静态类型参数定义数据类型和函数族:

data T ??? = ...
mkT :: ... -> T ???
f :: T ??? -> ...

f需要能够将参数类型转换为,这样我们才能对它们做一些通用的事情(想想printf)。

也许是HLists的工作?

0 个答案:

没有答案