The way it is now is no different than comparing a string under system compare. Imagine having made the mistake of testing some text with capitols in it. That kind of mistake happens all the time.
I can bet you'll not make the same error soon however.
Within C2, which is what we are talking about. Not actually text based code editing. C2 has numerous typesafe guards to reduce syntax errors. Which is the great strength of VPL based tools.
In your example your making a comparison of
"string" == "string"
But that's not the case in C2. When comparing variables as a condition. The variable is drop down. Even if the variable is a string.
Event Compare [Variable] = "string"
In this case, 1 side the comparing variable side is typesafe. There is no way to make an error using the wrong variable. C2 never let's the developer use the wrong variable.
Not only that. in C2 if you do
Event Compare 2 values
var1 = var2
or
Action > set var [ var1 > var2 ? var1 : var2 ]
both vars must be spelled correctly for C2 to validate. Even in the typed expresion of embedding a logic code C2 requires that the name of the variables be valid before the action box can be closed.
We know that syntactically that Function calls are just straight string compares, but thats the same for variables. So why not typesafe Function strings.
Programming requires 3 primary components
variables
code flow(if, else, while, for, case...)
routines(Functions, Methods, GoSub)
Variables and Codeflow are type safe in C2. So why not typesafe the Functions?
to achieve the goal of typesafing Functions. The Function Plugin would require a shared list. The list would be composed from the Event OnFunction. That way C2 can check string for validity when the expression Function.Call("check this string") is used in an action.
It's totally doable and within C2 syntax safety makes a lot of sense :)