Raymond Hettinger wrote: > [Greg Ewing] > > > And you don't think there are many different > > types of iterables? > > Um, I meant iterators and suspect you meant the same --
The same comment applies either way. Each type of iterable usually has its own corresponding type of iterator. > YAGNI. The hypothetical "future development" benefit is even more > specious than the appeal for consistency. I've pointed out one possible use that would have provided a benefit, so rather than YAGNI, I'd say WACHUI (We Already Could Have Used It). > Let's try to resist > mucking-up this simple, elegant, and fast iterface by adding another > level of indirection. There's already a level of indirection, because the type creation machinery adds a descriptor to allow the type slot to be called via .next() from Python. If there were a next() function, that descriptor would not be needed. So the total amount of indirection for built-in iterators would remain the same. > Looking > back at Guido's original rationale for naming the method next() instead > of __next__(), http://www.python.org/peps/pep-0234.html , it does not > look like any of those reasons will cease to apply in Py3.0. The discussion in that PEP makes no mention of the flexibility benefits of a next()/.__next__() combination. Mostly it doesn't even discuss the combination at all, only the idea of calling the method __next__(). The idea of a next() function is only mentioned in a parenthetical comment in which the sole reason for rejecting it is "it's too late, we've already implemented it". In 3.0 we will have a rare opportunity to revisit the idea without the "it's too late" constraint. I'm suggesting we give it careful consideration, because we probably won't have another opportunity for quite a long time. -- Greg Ewing, Computer Science Dept, +--------------------------------------+ University of Canterbury, | Carpe post meridiam! | Christchurch, New Zealand | (I'm not a morning person.) | [EMAIL PROTECTED] +--------------------------------------+ _______________________________________________ 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