Vladimir, Your examples seem to indicate that you've misunderstood the change that's proposed for Python 3000. Especially this:
On 5/17/06, Vladimir 'Yu' Stepanov <[EMAIL PROTECTED]> wrote: > # BEGIN: Emulation python3000 > if type(a) is not type(b) and ( > not operator.isNumberType(a) or > not operator.isNumberType(b) > ): > raise TypeError("python3000: not-comparable types", > (a,b)) > # END: Emulation python3000 Python 3000 will not do anything like this. It'll try a.__cmp__(b), and failing that b.__cmp__(a) (but imagine this using tp_ slots instead of actual Python method calls), and if both return NotImplemented, it'll throw a TypeError (rather than guess, which is what it does now). There's a lot of legacy oddness in PyObject_RichCompare() and its many helper functions; presumably they'll delete some of that, but it won't be anything you care about. Comparison with None should also continue to work as it does now, unless I missed something. -j _______________________________________________ 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