Interactive Data Language (IDL) is a programming language used for data analysis, particularly in the fields of astronomy, atmospheric physics, and medical imaging.
Commonly used for interactive processing of large amounts of data, IDL is vectorized, numerical, and interactive. Its syntax is similar to Fortran and includes some of the constructs of C. It shares a common syntax with PV-Wave, as it originated from the same codebase, although the languages have since diverged considerably.
The languages that led up to IDL were developed at the Laboratory for Atmospheric and Space Physics at the University of Colorado at Boulder in the 1970s. The chief designer, David Stern, first developed Rufus, which was a vector-oriented calculator that ran on the PDP-12. A version of Rufus for the PDP-8 was the Mars Mariner Spectrum Editors (MMED), which was used to interpret data from the Mariner 7 and Mariner 9 space probes. Stern then wrote SOL, which was a true programming language with a syntax similar to Fortran.
In 1977, Stern left LASP to found Research Systems, which developed IDL for the PDP-11. The first licenses were sold to the Goddard Space Flight Center (NASA) and Ball Aerospace & Technologies Corporation. Soon, the National Center for Atmospheric Research, the Naval Research Laboratory, and the Universities of Colorado and Michigan bought licenses.
In 1987, a version of IDL was developed for the Unix environment, which was ported to several variants of Unix, VMS, Linux, Windows, and Mac.
Limited object-oriented capabilities were added to the language in 1997.
In 2004, Research Systems became a subsidiary of ITT Industries, and began doing business as ITT Visual Information Solutions in 2006. In 2015, Visual Information Solutions became Harris Geospatial Solutions, which now owns and maintains the language.
There are two free implementations of IDL: GNU Data Language and Fawlty Language.
IDL may also refer to an interface description language, which is a specification language that is used to describe a software component's application programming interface (API). In that context, an IDL describes an interface in a language-independent manner, enabling communication between software components that do not share a common language.
The focus of this category is on the Interactive Data Language (IDL), any of its implementations or dialects, or any IDEs, editors, or other tools designed to facilitate programming in IDL. User groups, forums, tutorials, or guides to the use of IDL are also appropriate for this category.
 
 
Recommended Resources
Coyote’s Guide to IDL Programming
Originally created by David Fanning, the site is now maintained by Paulo Penteado at JPL, and includes IDL how-to articles, program libraries, and example programs, as well as online documentation, annotated IDL links, and an archive of an IDL Usenet group. A couple of IDL books by David Fanning are highlighted, and links to where they can be purchased are provided, along with other IDL books. Some of the more popular articles from the site are featured.
http://www.idlcoyote.com/
FL is a compiler that is nearly 100% compatible with the Interactive Data Language version 8 (IDL8) and licensed as freeware, freely downloadable. All language elements are supported, including multithreaded operators. Its features are listed here, along with download links, installation instructions, development notes, as well as additional libraries required to run the language in a Raspberry environment. Bugs and other issues may be reported for inclusion on the site.
http://www.flxpert.hu/fl/
Goddard Space Flight Center: IDL Astronomy User’s Library
The Library is a central repository for low-level astronomy software written in the IDL programming language. Not intended to be an integrated package, it is a collection of procedures from which users can pick and choose, or even modify for their own use. Submitted procedures are given cursory testing, but are generally stored as submitted. The entire contents may be downloaded in a tar file or a zip file from the download site. Documentation is available.
https://idlastro.gsfc.nasa.gov/
L3 Harris Geospatial Solutions
Founded in 1977, Harris Geospatial’s flagstone product is the IDL programming language, a scientific programming language used to interpret data, expedite discoveries, and produce applications for the astronomy, atmospheric, and medical imaging industries. As developed by Harris Geospatial, the IDL development environment features an intuitive code interface with an example-based help system and add-on modules. Self-help tools and a user support forum are included.
https://www.harrisgeospatial.com/
Maintained by Kenneth P. Bowman, professor in the Atmospheric Sciences Department at Texas A&M University, and the author of “An Introduction to Programming with IDL,” the site presents an overview of the language, offers information about his book, including downloadable files with example programs from the book, solutions to selected exercises from the book, and some programs that he had developed for his own research using IDL, as well as tips on running IDL on a Mac.
http://learnidl.com/
Written by Michael Galloy, Modern IDL is a guide to using the IDL programming language, including an overview of recent versions of the language, advanced programming topics, and best practices in the use of the language, as well as a reference guide for beginners and advanced users, with tables and lists of items. A bio of the author is presented, along with a synopsis of the book, the table of contents, and a sample chapter on object graphics. The book may be purchased in PDF format.
http://modernidl.idldev.com/