为什么我需要Haskell的data / newtype中的类型变量?

时间:2013-07-16 15:29:34

标签: haskell

似乎data / newtype类型构造函数总是需要一个类型变量。

假设我只有一些元组和列表的嵌套,我想隐藏实现并限制客户端只使用某组函数?我如何确定哪个元素属于“变量”类型,哪个元素不属于?

编辑:在任何人感到困惑之前:您不需要类型变量!

我问过这个问题,因为很多例子都包含一个类型变量,但是data / newtype在没有一个变量的情况下完美地工作:

data Foo = Foo Int deriving Show
x = Foo 42

1 个答案:

答案 0 :(得分:4)

data T

data T = T

data T = T | S

data T = T (T, T)
'nuf说。