为什么会出现解析错误?

时间:2012-04-24 18:31:35

标签: haskell syntax

为什么会出现解析错误?我插入一个列表,并希望得到元组。 (顶行是正确的)。

freq :: Eq a => [a] -> [(Int,a)]
freq x:xs  = [(x,y)| (x,y) x <- count , y <- rmdups]

2 个答案:

答案 0 :(得分:6)

这里有两个语法错误 - 模式上没有括号,错误地将(x,y)放在理解中。它应该是:

freq (x : xs) = [(x, y) | x <- count, y <- rmdups]

答案 1 :(得分:1)

你必须在你的模式匹配中添加括号

freq (x:xs) = {- ... -}