This is as optimal as prepend + reverse, map should iterate only once over the iterator, and it doesn't come up in the profiler