为什么没有数据构造函数的类型有效?

时间:2012-01-11 22:44:51

标签: haskell

这似乎是合法的:

data MagazineInfo = Int String
    deriving (Show)

我不确定是否有默认数据构造函数,但上面的代码编译。

为什么上面有效的Haskell,因为我没有明确指定值构造函数?

1 个答案:

答案 0 :(得分:29)

你确实有一个数据构造函数 - 它是Int。类型名称存在于与数据构造函数不同的命名空间中,这就是为什么即使碰巧存在名为Int的类型也不会出现错误的原因。