It's good you brought this up. Regardless of what is correct or not in math expressions in general, one should take into account the way mirc's parser works. For example, mirc allows you to do stuff like
//var %a = ^2 | echo -a $calc(5 %a)
which prints "25"
This probably means that first variables/identifiers are evaluated and then the resulting expression is passed to the math function that performs the calculations. So, if this 'bug' is fixed, we'd be forced to write ugly and boring extra code to avoid mishaps like this:
//var %a = $r(1,9) - 5 | echo -a $calc(%a ^ 2)
You would expect this to always print a positive number: whatever value %a has (negative or positive), it's squared, so the result is always positive. However, if the bug is fixed and %a happens to be -4, $calc() will output a negative number because "%a ^ 2" becomes "-4 ^ 2", which would now give -16. I'm guessing that few scripters would not be surprised by a negative result from the above. Of course, you can get around this by wrapping () around every single variable, but that's the point where it gets ugly and boring.

Considering this, I'm rather against fixing $calc(), even if it's technically incorrect.


/.timerQ 1 0 echo /.timerQ 1 0 $timer(Q).com