If memory serves right, the reason used to be that list comprehension was slower than the recursiv version - this was true in R6 (R5 ?) and earlier, but nowdays there should be no major difference.