2012-04-24 158 views
1

为什么会出现这个解析错误?我插入一个列表并想要取出元组。 (第一行是正确的)。为什么会出现分析错误?

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

回答

1

你必须把括号中的模式匹配

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

这里有两个语法错误 - 放置(x,y)的理解里面的图案没有括号,和错误。它应该是:

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

它说freq缺乏相应的绑定...你知道这可能意味着什么吗? – user1351008 2012-04-24 18:47:03

+0

@ user1351008:这意味着你已经给出了'freq'的类型,但不是定义。 – rampion 2012-04-24 19:37:40