The Bare Bones of Applescript

  • basic data types are boolean, string, integer, real, list, record and object
  • different types can coexist in a list, including nested lists
  • records are lists of key-value pairs
  • standard control flow with if/else constructions and repeat (for, while, in) loops
  • variables are instantiated when used, and are not strictly typed
  • script objects can encapsulate methods and data
  • script objects can inherit behavior from a parent script
  • “tell” construct used to identify target of message
  • applications can define terminology at runtime
  • runtime compilation possible using “run script” construct
  • persistence and modularity possible using “store script” and “load script”