I wrote a isPalindrome function which checks whether a given list is
such a palindrome.
it reads:
isPalindrome xs
| odd (length xs) = False
| firstHalf == secondHalf =True
| otherwise = False
where half = div (length xs) 2
firstHalf = take half xs
secondHalf = reverse (drop half xs)
I would expect the type signature to be:
isPalindrome :: [a] -> Bool
but ghci gives me
is Eq a => [a] -> Bool
and I don't undestand why the "Eq a =>" shows up.