Haskell类型别名被错误“绑定位置中的限定名称”击败

时间:2014-08-05 13:35:30

标签: haskell type-alias

作为一名Haskell新手,我正在尝试使用关键字“data”来定义类型别名。这是我简单的整个文件:

import qualified Data.Array.Unboxed
data Point = Data.Array.Unboxed.UArray Int Double

GHC说“绑定位置的合格名称:Data.Array.Unboxed.UArray”

为什么我不能使用合格的名字? 我该如何定义我的类型别名?

1 个答案:

答案 0 :(得分:4)

您需要使用type关键字,该关键字声明类型别名。 data关键字声明了一种新的自定义数据类型。所以你可以做类似

的事情
data Point = MkPoint (Data.Array.Unboxed.UArray Int Double)
--           ^ The constructor name

但你似乎只想要

type Point = Data.Array.Unboxed.UArray Int Double
--           ^ No custom constructor for type alias