错误元组:约束中的非类型变量参数:积分(a,a)
Error tuple: Non type-variable argument in the constraint: Integral (a, a)
我见过这样定义元组类型的例子:
countRepetitions :: (Integral a, Integral (a,a)) => [a] -> a -> (a,a)
但是当我执行代码时出现消息:
约束中的非类型变量参数:Integral (a, a)
如何声明元组类型?
您无需使用 Integral (a, a)
进行约束。约束 Integral a
强制类型 a
的所有值都为 Integral
。尝试像这样重写它:
countRepetitions :: Integral a => [a] -> a -> (a,a)
我见过这样定义元组类型的例子:
countRepetitions :: (Integral a, Integral (a,a)) => [a] -> a -> (a,a)
但是当我执行代码时出现消息:
约束中的非类型变量参数:Integral (a, a)
如何声明元组类型?
您无需使用 Integral (a, a)
进行约束。约束 Integral a
强制类型 a
的所有值都为 Integral
。尝试像这样重写它:
countRepetitions :: Integral a => [a] -> a -> (a,a)