Jan*_*ary 2 constructor haskell types
以下示例来自Hudak,Peterson和Fasel的"对Haskell 98的温和介绍":
data Point a = Pt a a
Run Code Online (Sandbox Code Playgroud)
这是什么'Pt'?它从何而来?这是什么意思?之前已经定义过,还是我们在这里定义它?它突然出现在文本中,之前没有被提及,谷歌的"Pt Haskell"在Portugese返回Haskell文档;-)
编辑:感谢@unhammer的回复,我现在看到对另一个问题的回答很好地解释了问题:这里
这Pt是你自己组成的名字.您可以使用它来创建新的Point.
?> data Point a = Pt a a
?> let p = Pt 1 2
?> :t p
p :: Num a => Point a
Run Code Online (Sandbox Code Playgroud)
(对于这些单构造函数数据,您还经常会看到它们的名称与类型相同,例如data Point a = Point a a.)