On Tue, 04 Nov 2008 20:25:09 -0500, Steve Holden wrote: > I think there'd be no advantage to a sort method on a generator, since > theoretically the last item could be the first required in the sorted > sequence, so it's necessary to hold all items in memory to ensure the > sort is correct. So there's no point using a generator in the first > place.
You can't sort something lazily. Actually, that's not *quite* true: it only holds for comparison sorts. You can sort lazily using non-comparison sorts, such as Counting Sort: http://en.wikipedia.org/wiki/Counting_sort Arguably, the benefit of giving generators a sort() method would be to avoid an explicit call to list. But I think many people would argue that was actually a disadvantage, not a benefit, and that the call to list is a good thing. I'd agree with them. However, sorted() should take a generator argument, and in fact I see it does: >>> sorted( x+1 for x in (4, 2, 0, 3, 1) ) [1, 2, 3, 4, 5] -- Steven -- http://mail.python.org/mailman/listinfo/python-list