[Python-Dev] Python-Dev Digest, Vol 69, Issue 143
Scott David Daniels
Scott.Daniels at Acm.Org
Fri Apr 17 16:58:55 CEST 2009
Greg Ewing wrote:
> Steven D'Aprano wrote:
>> it should be obvious in the same way that string concatenation is
>> different from numerical addition:
>>
>> 1 + 2 = 2 + 1
>> '1' + '2' != '2' + '1'
>
> However, the proposed arithmetic isn't just non-
> commutative, it's non-associative, which is a
> much rarer and more surprising thing. We do
> at least have
>
> ('1' + '2') + '3' == '1' + ('2' + '3')
>
But we don't have:
(1e40 + -1e40) + 1 == 1e40 + (-1e40 + 1)
Non-associativity is what makes for floating point headaches.
To my knowledge, floating point is at least commutative.
--Scott David Daniels
Scott.Daniels at Acm.Org
More information about the Python-Dev
mailing list