Semantics of ==
Axel Boldt
axelboldt at yahoo.com
Fri Mar 26 08:45:53 EST 2004
More information about the Python-list mailing list
Fri Mar 26 08:45:53 EST 2004
- Previous message (by thread): Calling function keywords from a dictionary
- Next message (by thread): Semantics of ==
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Erik Max Francis <max at alcyone.com> wrote > What part of the semantics are you unclear about? Two sequences are > equal if they are element-wise equal. That definition is circular. > That is the definition that people rely on, Yes. > that's the definition that the interpreter uses, No. > and that definition is even consistent with the behavior you saw with the > self-referencing lists which for some reason surprised you. Yes, s==w is consistent with the definition, but s!=w would also have been consistent with it. Consider for instance the following definition: * all strings and numbers are called "well-founded" * a list is called well-founded if and only if all its elements are well-founded. l=[] l.append(l) Is l well-founded? Both answers "yes" and "no" are consistent with the above definition. If you write a program to determine whether a given list is well-founded, it will run into an infinite loop. Similarly, if you try to write a program implementing the above simple-minded definition of list-equality, it'll run into an infinite loop. Since Python does not run into an infinite loop, it must use a different definition. Axel
- Previous message (by thread): Calling function keywords from a dictionary
- Next message (by thread): Semantics of ==
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list