为什么其中一些定义有效,而其他定义却无效?

时间:2020-09-14 22:58:37

标签: haskell types

由于某些原因,定义f3和f6有效,而f4无效

f3 :: Num a => a -> a -> a -> a -> a
f3 = undefined

f4 :: String a => a -> a -> a -> a -> a
f4 = undefined

f6 :: [Char] -> [Char] -> [Char] -> [Char] -> [Char]
f6 = undefined

错误消息是Expected kind ‘* -> Constraint’, but ‘String’ has kind ‘*’,我已经在Google上搜索了该消息,但未能理解

请注意f3和f4之间的相似性。另外,如果可以的话,我是一个初学者。

谢谢!

0 个答案:

没有答案