I'm trying to define a function that given an element and a list to count the number of times that element appears on that list, then I have:
cuantasVecesAparece :: Eq a => a -> [a] -> Int cuantasVecesAparece p  = 0 cuantasVecesAparece p [x:xs] = if p == x then 1 + cuantasVecesAparece xs else cuantasVecesAparece xs
But I get the following error:
ERROR file:.\ff1.hs:272 - Type error in application *** Expression : p == x *** Term : p *** Type : [a] *** Does not match : a *** Because : unification would give infinite type
I do not understand why I'm taking
p as a list.