Tell me something, honestly JJ ... have you ever started with a blank editor and written a medium or large sized C program from the ground up?
Tater, that's an interesting idea! Do you think at the end of the process I would be sufficiently confused to accept your "standard math", i.e.
hypoetneuse = sqrt(a*a + b*b) presents undefined behaviour
?
Difficult to imagine, honestly. I learned 50 years ago that sqrt(a*a + b*b) is exactly
defined, following operator precedence rules, as sqrt((a*a) + (b*b)) or sqrt(a
2 + b
2), and such early lessons tend to be sticky...
But maybe you can produce a snippet that compiles with Pelle's C and produces, as you suggested, randomly different results as shown below?
... can be evaluated in several different ways...
((a * a) + b) * b
or
a * ((a+b) * b)
etc.