R J wrote:
> What's the cleanest definition for a function f :: [a] -> [a] that takes a
> list and returns the same list, with alternate items removed?  e.g., f [0,
> 1, 2, 3, 4, 5] = [1,3,5]?

f = map head . takeWhile (not . null) . iterate (drop 2) . drop 1

Regards,
Yitz
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to