Agreed. Well, need to think about the string part for a minute. Maybe it would auto Val() it or something.

In a perfect world that is how it would be. In the case of Howard's example, the :A perhaps should have delimited the command but it did not.

How can KiX know if the expression that follows generates a number unless it is enumerated?

Even in the perfect world, if the expression that follows, whether it would return a number or not, throws an error (as in Howard's example) then KiX still dies. How can KiX ignore such an error? KiX cannot be expected to second guess the intent of the expression. An error is an error and it has no choice but to bomb.
_________________________
Give a man a fish and he will be back for more. Slap him with a fish and he will go away forever.