... and the conclusion is? I quite like Ross's version inits = map reverse . scanl (flip (:)) [] and it wins at least on one of the tests. Cheers, Simon