alleq :: Eq a => [a] -> Maybe a -> Bool alleq [] _ = True alleq (h:t) Nothing = alleq t (Just h) alleq (h:t) (Just e) | h == e = alleq t (Just e) | True = False