定义文件夹变体时出现非穷举模式错误

时间:2019-01-15 16:50:04

标签: haskell fold non-exhaustive-patterns

我被要求制作一个功能类似于foldr,但具有非空列表的函数,其功能如下:foldr1 f [x1,x2...xn] = f x1 (f x2...(f xn-1 xn)...)

所以我这样定义它:

foldr1 f [x] = x
foldr1 f (x:xs) = f x (foldr1 f xs)
foldr1 f _ = undefined

尽管涵盖了所有可能性,但我仍然收到“函数foldr1中的非穷尽模式”错误。我在做什么错了?

0 个答案:

没有答案