I generally agree, but the last paragraph has some buried traps in it.
Integer arithmetic is guaranteed to be commutative and associative. But floating point arithmetic is not.
For example, you might be tempted to take the average of a collection of floating point numbers by adding them together and dividing by the count.
And this might work for a long time, and then one day you get wildly wrong numbers, because you ended up subtracting two large numbers that were very close and your precision vanished, because of some calculation like this:
1E10 + 1E-10 - 1E10 = 0
(Try it on your interpreter!)
The only fully correct way to add this long column of numbers is to split them into positive and negative groups, then sort each group, and sum each group separately in increasing order, and then add those two totals at the end.