Re: Reason for operator precedence




Tony wrote:
Hi all.

Hope this isn't a silly question.

I was wondering what the reason is for having multiple levels of operator
precedence?

Phrased another way, why is it that we don't just evaluate everything from
left to right?

Having multiple levels of precedence obviously adds complexity, so I assume
there must be some payback. However, I don't see what it is.


As far as addition/subtraction vs multiplication/division is concerned,
one reason is to ensure that the distributive property of
multiplication works sensibly. For example, we want 3*(4 + 6) = 3*4 +
3*6 = 3*(6 + 4) = 3*6 + 3*4.

And for exponentiation we want, for example, 3*3^2 = 3^3, not (3*3)^2

.


Loading