On 4/29/07, Steven Bethard <[EMAIL PROTECTED]> wrote: > On 4/29/07, Talin <[EMAIL PROTECTED]> wrote: > > If it were technically possible, I would recommend that this PEP have to > > run the same gauntlet that any other large library addition would, which > > is to go through a long period of community feedback and criticism, > > during which a large number of people actually attempt to use the > > feature for real work.
> This sounds like a pretty good reason to add __isinstance__() and > __issubclass__(). Then the various ABCs can be distributed as > third-party modules but can still make sure that things like > isinstance(42, Real) and issubclass(int, Complex) are True (or > whatever other assertions people want to make). Or isexample, so that we aren't locked into implementing ABCs as base classes. def isexample(val, ABC): return ABC.__example__(val) class ABC(object): def __example__(cls, val): if val in cls.__instance: return True if val in cls.__non_instance: return False for instclass in type(val).__mro__: if instclass in __class: return True if instclass in __non_class: return False return False ... methods to register classes, unregister subclasses, etc -jJ _______________________________________________ Python-3000 mailing list Python-3000@python.org http://mail.python.org/mailman/listinfo/python-3000 Unsubscribe: http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com