Am 13.07.2014 18:23, schrieb Steven D'Aprano:
On Sun, Jul 13, 2014 at 05:13:20PM +0200, Andreas Maier wrote:

Second, if not by delegation to equality of its elements, how would the
equality of sequences defined otherwise?

Wow. I'm impressed by the amount of detailed effort you've put into
investigating this. (Too much detail to absorb, I'm afraid.) But perhaps
you might have just asked on the python-l...@python.org mailing list, or
here, where we would have told you the answer:

     list __eq__ first checks element identity before going on
     to check element equality.

I apologize for not asking. It seems I was looking at the trees (behaviors of specific cases) without seeing the wood (identity goes first).

If you can read C, you might like to check the list source code:

http://hg.python.org/cpython/file/22e5a85ba840/Objects/listobject.c

I can read (and write) C fluently, but (1) I don't have a build environment on my Windows system so I cannot debug it, and (2) I find it hard to judge from just looking at the C code which C function is invoked when the Python code enters the C code. (Quoting Raymond H. from his blog: "Unless you know where to look, searching the source for an answer can be a time consuming intellectual investment.")

So thanks for clarifying this.

I guess I am arriving (slowly and still partly reluctantly, and I'm not alone with that feeling, it seems ...) at the bottom line of all this, which is that reflexivity is an important goal in Python, that self-written non-reflexive classes are not intended nor well supported, and that the non-reflexive NaN is considered an exception that cannot be expected to be treated consistently non-reflexive.

This was discussed to death some time ago, both on python-dev and
python-ideas. If you're interested, you can start here:

https://mail.python.org/pipermail/python-list/2012-October/633992.html

which is in the middle of one of the threads, but at least it gets you
to the right time period.

I read a number of posts in that thread by now. Sorry for not reading it earlier, but the mailing list archive just does not lend itself to searching the past. Of course, one can google it ;-)

Andy
_______________________________________________
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

Reply via email to