Can a simple a==b 'hang' in and endless loop?

Claudio Grondi claudio.grondi at
Thu Jan 19 10:08:38 CET 2006

Steven D'Aprano wrote:
> Claudio Grondi wrote:
>> Exactly this is what Python does under the hood when writing
>> a = "some string"
>> b = "some string"
>> where a and b are actually, in terms of C, pointer to Python object 
>> data structures which provide strings as arrays where it is possible 
>> to say a[0], but ... if here
>> if(a==b):
>>   print "True"
>> _does not_ print True, the Python engine is definitely broken.
> Why are you comparing C behaviour to Python behaviour? What is the point 
> of the discussion?

The point is to find a way to create in Python two indentifiers a and b 
without manipulating any of the __eq__ and to __eq__ related functions 
in a way, that the simple
   if a==b: print 'a==b'
statement results in an endless loop.
To my knowledge this is not possible to achieve in C, but is probably 
achievable in Python.


More information about the Python-list mailing list