0
鉴于这些2和类型:数据类型包含两个和类型?
data Foo = A Int | B String
data Bar = C Int | D String
我想定义返回Either (Foo or Bar) String
功能。
所以,我试图使:
data Higher = Foo | Bar
但它无法编译:
*ADT> :r
Type checking ./ADT.idr
ADT.idr:3:6:Main.Foo is already defined
ADT.idr:4:6:Main.Bar is already defined
如何创建一个Higher
数据类型,它由Foo
或Bar
?
为什么不只是'要么(要么Foo酒吧)字符串? – xash