IGOR Pro is a scientific data analysis software, numerical computing environment and programming language that runs on Windows or Mac operating systems. It is developed by WaveMetrics Inc., and was originally aimed at time series analysis, but has since then evolved and covers other applications such as curve fitting and image processing. It comes with a fully functional programming language and compiler, but many functions are also accessible through menus. IGOR Pro is primarily known for its graphics capabilities, and like Origin and other similar programs, is often used to generate plots for scientific and other publications. Other features include the possibility of extending the built-in functions with external operations (XOP) allowing data acquisition, manipulation and analysis features, communication with external devices and in principle any other task that can be programmed in C or C++. It was first released as "Igor" in 1989, and became "Igor Pro" circa 1994 Features Igor Pro has several features that distinguish it from other graphing programs. The most significant ones are: It is completely programmable with a compiled, C-like programming language. Igor features a hybrid interface that allows to control the program either with a command line or with clicking menu entries with the mouse. It allows to store data in up to four-dimensional, sophisticated arrays (called "waves"). The concept of Igor's "waves" Waves are up to four-dimensional arrays that can carry not only numbers, but also characters (text), or date-and-time entries. Waves can carry meta-information, for example, the physical units of each dimension. Igor offers a wide choice of methods to work with these waves. It is possible to do image-processing with images that have been saved as two- or three-dimensional waves. In addition, two-dimensional waves can be used for matrix calculations. Capabilities of Igor's programming language Without the optional add-on packages (XOP, NIDAQ Tools), Igor's programming language supports, amongst others, the following concepts Generating compiled code (although no independent .exe file is created) Handling of variables, strings, and waves Formatted output Regular expressions Making graphical user interfaces FTP and HTTP communication Reading/writing operations on the hard drive Community Complementing the professional development and support provided by WaveMetrics, a broad community of users and enthusiasts provide user-to-user support through a mailing list, IgorExchange(a collaborative web site sponsored by WaveMetrics whose main features are a forum and places where programmers can share extensions, complete projects or "code snippets"), and GitHub repositories. Several large