B
BartC
[Repost of lost message. Hopefully this won't contradict that one if it ever
turns up..]
You've got it wrong; you need more arbitrariness to increase the number of
levels. You need to justify one operator having a higher or lower precedence
than another. At the same level, there is little to decide!
The difference between add/subtract, and multiple/divide, most people know
about. That's two. There's a few more levels that are obvious (compare, and
logical and/or). But none of the rest have an obvious precedence, or no
reason to for them to have their own dedicated precedence level.
(In a UK general discussion forum, the value of 48÷2(9+3) was recently
discussed. After 2500 posts, there was still no agreement! And a poll showed
that 55% thought the answer was 2, and 45% thought it was 288. Someone even
posted this explanation:
.
So a lot of people have trouble even dealing with just two precedence
levels. And C has a dozen more! Admittedly that was a not technical forum.)
turns up..]
Ben Bacarisse said:"BartC" <[email protected]> writes:
In short, I don't think C would be logical with fewer than 11 levels,
and once you have 11, does it matter if the distinctions between
operators are emphasized by having 15? Would the degree of
arbitrariness required to reduce the number eliminate the benefit of
having fewer?
You've got it wrong; you need more arbitrariness to increase the number of
levels. You need to justify one operator having a higher or lower precedence
than another. At the same level, there is little to decide!
The difference between add/subtract, and multiple/divide, most people know
about. That's two. There's a few more levels that are obvious (compare, and
logical and/or). But none of the rest have an obvious precedence, or no
reason to for them to have their own dedicated precedence level.
(In a UK general discussion forum, the value of 48÷2(9+3) was recently
discussed. After 2500 posts, there was still no agreement! And a poll showed
that 55% thought the answer was 2, and 45% thought it was 288. Someone even
posted this explanation:
So a lot of people have trouble even dealing with just two precedence
levels. And C has a dozen more! Admittedly that was a not technical forum.)