根据数据类型的定义,我有一个问题: 可以在定义中使用符号或数字吗? 举例来说,如果我想创建一个数据类型为低,等号当然haskell自己的数据类型 - 在数据类型定义中使用符号或数字
data Signs = Lo | Eq
的下面的代码工作的构造罗代表“<”和构造函数公式为“=”。
但我不能使用“真实”的迹象。例如,下面的代码将无法正常工作
data Signs = Lo "<" | Eq "="
type Signs = "<" | "="
type MyInt = '1' | '2'
data MyInt = One '1' | Two '2'
所以我想知道是否有使用定义中“真正的”标志和编号的可能性。如果有一个,如果你能告诉我它是如何工作的话,那将会很好。 ;)
你想他们只是为了方便起见? – huon
@dbaupp:不只是为了方便,但我很想知道它。对我来说,像“Int”这样的内置数据类型很难重新实现,这有点奇怪。或者,你会如何尝试实现等同于“Int”的数据类型“data MyInt = ...”? – jimmyt