我想使用Haskell高阶函数Foldr来计算字符串的长度
stringlength = foldr (\_n -> 1 + n) 0
它会出现以下错误。此代码有什么问题?
Unresolved top-level overloading
*** Binding : stringlength
*** Outstanding context : (Num b, Num (b -> b))
答案 0 :(得分:8)
您需要为模式匹配添加空格
(\_ n -> ... )
^^here
目前您正在匹配单个变量_n
而不是_
和n
,正如您可能想要的那样。