The only thing I've come across is that you have to set enableRedraw to true if you want to use ScriptUI progress bars. On Windows, anyway. Otherwise I don't think it does very much.
… A comment about the two first lines?
Off the top of my head:
#targetengine "main" -- the default engine -- global variables are lost after a script completed execution
#targetengine "session" / #targetengine "obi" / #targetengine "kas" / etc. -- a persistent scripting engine that does not lose all of your globals and object references between script executions.
Use persistent scripting engine to:
- make a start up script
- non-modal dialog box -- palette
- avoid conflict of global variables
You may target a particular version of an application if you have more than one installed, for example:
You can't do without this in inter-application interaction: e.g. get a link in InDesign, resize it in Photoshop, update and set it to 100% in InDesign.
Interesting explanation! Thanks Kas!