haskell拥有数据类型-在数据类型定义中使用符号或数字
根据数据类型的定义,我有一个问题: 是否可以在定义中使用符号或数字? 例如,如果我想为小写和等号创建一个数据类型,下面的代码当然可以工作haskell拥有数据类型-在数据类型定义中使用符号或数字,haskell,types,algebraic-data-types,Haskell,Types,Algebraic Data Types,根据数据类型的定义,我有一个问题: 是否可以在定义中使用符号或数字? 例如,如果我想为小写和等号创建一个数据类型,下面的代码当然可以工作 data Signs = Lo | Eq 构造函数Lo代表“运算符标识符,前缀为:,可在数据构造函数中使用 data Signs = (:<) | (:=) 请参见您是否只是为了方便而使用它们?@dbaupp:不仅仅是为了方便,我还想知道它。对我来说,像“Int”这样的内置数据类型很难重新实现有点奇怪。或者,您将如何尝试实现与“Int”等效的数据类型
data Signs = Lo | Eq
构造函数Lo代表“运算符标识符,前缀为
:
,可在数据构造函数中使用
data Signs = (:<) | (:=)
请参见您是否只是为了方便而使用它们?@dbaupp:不仅仅是为了方便,我还想知道它。对我来说,像“Int”这样的内置数据类型很难重新实现有点奇怪。或者,您将如何尝试实现与“Int”等效的数据类型“data MyInt=…”“?在这段时间里,我一直假设中缀数据构造函数必须只接受两个参数。。。我错了。@jimmyt别忘了把答案标记为正确!(绿色复选标记)
data Signs = (:<) | (:=)
[(:<), (:=)]
data MyInt = N1 | N2