&gt; And over integers too, in the presence of overflows (in junk languages without bignums)<p>I don&#x27;t think this is true. Modular addition is commutative and associative. As long as the behavior of overflow is modular (as it is in 2&#x27;s complement), order shouldn&#x27;t matter. And if the behavior of overflow is to trap, then it should trap regardless of the order you add the numbers in. I guess if you care about the stack trace you get being the same even under optimizations, then you could argue this isn&#x27;t a safe optimization. And if the behavior of overflow is undefined, it&#x27;s undefined whether you reverse the list or not.<p>Maybe you&#x27;re thinking of Javascript, which not only doesn&#x27;t have bignums, but uses floating point even for integers?