Originally Posted By: argv0
you need to choose an "mircish" approach because the syntax has to be compatible, otherwise you completely destroy the parser...

for instance "case:" is a valid command name and so is "default:", so how would the parser differentiate?

I beg to differ the case and default statement are parts inside the switch() {

}
statement so it could definitely make the distinction without breaking compatibility. mIRC would have to break switch,case & default aliases anyway so whether it breaks default or default: is of little importance.
Originally Posted By: argv0

case N: might work but again, mIRC has no concept of strings, so you could easily end up with
Code:
case X: says: 
   blah

for "X: says"


Since when has that stopped mIRC from implementing anything ? By that logic the whole on *:TEXT:*:*: concept could/should have never been implemented.

The same escape logic would apply to the case statement
"case X $+ $chr(58) says:"