我正在阅读学习 Haskell 最佳实践,遇到以下单词:
例如,length 函数的类型声明为 length :: [a] -> Int,而不是更通用的类型 (Num b) => length :: [a] -> b。在这里如何理解“(Num b) => length :: [a] -> b”?它不应该是“length :: (Num b) => [a] -> b”吗?
例如,length 函数的类型声明为 length :: [a] -> Int,而不是更通用的类型 (Num b) => length :: [a] -> b。在这里如何理解“(Num b) => length :: [a] -> b”?它不应该是“length :: (Num b) => [a] -> b”吗?