Haskell:创建最大'函数时“模式中的解析错误:”

时间:2013-09-18 04:37:13

标签: haskell max

所以我试图实现一个最大函数但由于某种原因我在最后一行“mymax x:y:ys = .....”上得到一个解析错误。这个错误的原因是什么?谢谢!

mymax :: Ord a=>[a]->Maybe a
mymax [] = Nothing
mymax [x] = Just x
mymax x:y:xs = if (x < y) 
            then mymax(y:xs) 
            else mymax(x:xs)

2 个答案:

答案 0 :(得分:3)

你错过了括号:

mymax (x:y:xs) = if (x < y) 
                 ...

答案 1 :(得分:2)

将括号括在x:y:xs

附近
mymax (x:y:xs) = ...