On Mon, Mar 19, 2012 at 12:55 PM, Guido van Rossum <gu...@python.org> wrote: > On Mon, Mar 19, 2012 at 12:37 PM, Ethan Furman <et...@stoneleaf.us> wrote: >> Nick Coghlan wrote: >>> >>> Collapsing the address list has to build the result list anyway to >>> actually handle the deduplication part of its job, so returning a >>> concrete list makes sense in that case. >> >> >> Having only one function return a list instead of an iterator seems >> questionable. >> >> Depending on the code it could either keep track of what it has returned so >> far in a set and avoid duplication that way; or, just return an >> `iter(listobject)` instead of `listobject`. > > I know I'm lacking context, but is the list ever expected to be huge? > If not, what's wrong with always returning a list?
It's possible to return massive lists, (eg, returning the 4+ billion /128 subnets in /96 or something even larger, but I don't think that's very common). I've generally tried to avoid confusion by having 'iter' in the iterating methods, but if more of the methods return iterators, maybe I need to rethink that? > -- > --Guido van Rossum (python.org/~guido) > _______________________________________________ > Python-Dev mailing list > Python-Dev@python.org > http://mail.python.org/mailman/listinfo/python-dev > Unsubscribe: > http://mail.python.org/mailman/options/python-dev/pmoody%40google.com -- Peter Moody Google 1.650.253.7306 Security Engineer pgp:0xC3410038 _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com