Sensetalk - Eggplant's scripting language, leaves a lot to be desired. I do not personally see why people feel the need to invent new languages all the time. The syntax is overly simplistic, and as such can turn anything that is not simple into a lisp-like mess of parentheses in order to be sure what it will do. Some basic language features such as default parameters are missing and need to be engineered into your scripts. Behaviour for uninitialised variables is utterly broken - Sensetalk will silently do what it thinks is best - UninitialisedVar is read as "UninitialisedVar", however A phrase that has not been escaped in quotes may or may not throw a syntax error depending on what out of that phrase has been initialised and what type it has been initialised to.
Any hints and tips on using Sensetalk effectively?