Ruud gave a dissertation on this somewhere, sometime ago. I'll see if I can find a link to it.
In the meantime, the short answer is that an expression evaluates to the "type" of the first operand. So if an expression starts with a string, it will evaluate to a string. If it starts with a number, it will evaluate to a number ... this explains the behavior of :
? "kix" + 32 + "kix"
? 32 + "kix" + 32
[ 03 December 2001: Message edited by: Shawn ]