Where is the eval call in the hypertalk script? Is it "value of" applied to a string, i.e. "value of value of card field"? (I assume it's not simply "value of" since that doesn't seem like it would work for the operator buttons in the example - or does "/" or "+" evaluate to itself?)
This seems like a good reason to kill the language at least, in the Internet-connected era. In a language that's supposed to read like English, eval should be "dangerously execute untrustworthy text from ... as program instructions" or something, not a polymorphic call to a common operator accidentally applied to the wrong type.
This seems like a good reason to kill the language at least, in the Internet-connected era. In a language that's supposed to read like English, eval should be "dangerously execute untrustworthy text from ... as program instructions" or something, not a polymorphic call to a common operator accidentally applied to the wrong type.