Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Remove operator precedence #7
This may sound like a really rather drastic and odd thing to do, but EEL wouldn't be the only language to not have operator precedence. (Closest relative: The Audiality 2 scripting language.) Operator precedence is pointless outside of traditional math (where everyone knows the precedence of the few operators there are), and just offers another way of generating annoying, non-obvious bugs.
Note that since EEL has "Pascal style" assignment operators (that is, assignment operators don't generate results), there would actually still be two levels: assignment operators would have lower priority than all other operators. (Otherwise, you'd need parentheses around the expression in every single assignment statement that involves other operators, which is just nonsensical, I think.)
This will of course break code that relies on operator precedence, so we should probably throw in a switch that issues warnings whenever an expression would evaluate differently with/without operator precedence. Just add parentheses in the cases the difference is intended, and then you're done - script converted!
And of course, if we're making the switch, it's probably better to do it right now, before we have more than about three active EEL coders. ;-)