IDL 8.7 was released recently. The listed features are:

  • ROUTINE_DIR function that returns the directory for the file containing the calling routine
  • asynchronous job classes
  • a few miscellaneous other updates

The asynchronous job classes look interesting:

The IDLAsync classes allow you to specify units of work to execute asynchronously outside the main IDL session. To do this, create an IDLAsyncQueue and one or more IDLAsyncJob objects that encapsulate the work to be performed. As jobs are added to the queue, they will be executed at some point in the future as resources are available. When a job is complete, you can retrieve its results for further use. You can also construct an IDLAsyncJoin object and pass it into the jobs on creation. If you do this, you can wait on the join object for all of the jobs it observes to be finished before continuing.

Check the release notes for more details.