On Fri, Oct 7, 2016 at 6:36 AM, Serhiy Storchaka <storch...@gmail.com> wrote: > A number of builtin iterator classes (but not all builtin iterator classes) > are registered with the Iterator ABC in Lib/_collections_abc.py. But > isinstance(it, Iterable) check works without explicit registration, because > Iterable has __subclasshook__ that checks iterator methods. Is there a need > in explicit registrations? Or their can be safely removed?
The preferred apprach is actually inheritance; registration comes next; the __subclasshook__ is a final compromise to the tradition of duck typing. I think the registrations should stay. -- --Guido van Rossum (python.org/~guido) _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com