Writing scripts (often called “macros”) can be helpful for automating repetitive tasks. Scripting facilities for text editors like Emacs and Microsoft Word have been widely used and available. However, for graphical applications, scripting has been tried many times but has never been successful. This is mainly due to the data description problem of determining how to generalize the particular objects selected at demonstration time. Previous systems have mostly tried to solve this using inferencing, but this has a number of problems, including guessing wrong and providing appropriate feedback and control to users. Therefore, the Topaz framework does not use inferencing and instead allows the user to specify how the appropriate objects should be found. This is achieved by recording changes to which objects are selected and searches for objects, so that scripts can be written with respect to the selected object, in the same way as Emacs keyboard macros. Furthermore, all values can be...
Brad A. Myers