这是一个新的数据类型定义:在haskell中,什么:+:数据类型定义中的意思是什么?
data Total a = Total a :+: Total a
|...
是什么:+:平均在这种类型的定义是什么?
这是一个新的数据类型定义:在haskell中,什么:+:数据类型定义中的意思是什么?
data Total a = Total a :+: Total a
|...
是什么:+:平均在这种类型的定义是什么?
这是一个用infix形式编写的数据构造函数。如果以:
开头,则可以将操作员作为构造函数。
要轻描淡写地说,':'是一个大写的符号:D –
为什么会有:after +? – Sam
请注意,从GHC 7.6起,TypeOperators扩展现在将所有中缀运算符视为“大写”。 (打破使用中缀运算符作为类型变量的现有代码...) –
它在标准Haskell中无效。这是一个奇怪的GHC扩展:) – singpolyma
@singpolyma:它是标准的[Haskell 98语法](http://www.haskell.org/onlinereport/syntax-iso.html)(请参阅_consym_制作)。毕竟,列表的':'构造函数只是这个的一个特例。也许你正在考虑'TypeOperators'? – hammar
@hammar噢,嗯,我正在考虑'TypeOperators'。我不知道用数据构造函数的操作符是标准的。这很丑陋。通常丑陋的东西是扩展名:) – singpolyma