Fix takeWhile :: (a -> Bool) -> [a] -> [a]
The prior definition of takeWhile
and dropWhile
only check the first element.
> takeWhile even [2,3,4,5,6]
[2]
> dropWhile even [2,3,4,5,6]
[3,4,5,6]
where it should be:
>takeWhile even [2,3,4,5,6]
[2,4,6]
>dropWhile even [2,3,4,5,6]
[3,5]