For those of us who missed the day, version 4.0.0 of GNU Octave was released on May 29, 2015.
GNU Octave is a numerical programming environment that is very compatible with Mathworks’ Matlab. GNU Octave is (from the GNU Octave web site) “a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems, and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation.” The language is designed to program with matrices so matrix operations can be done without writing loops. This can save time in code development, and allows the software to be optimized for matrix operations. Along with matrices as a fundamental data type, complex numbers are also a fundamental data type along with a variety of integers and real numbers of various lengths.
A notable feature of this release is the addition of a graphical user interface (GUI). Previously, interaction with GNU Octave has been through the command line interface. Now, there is a graphical desktop environment which includes a code Editor window, a Command Window where you can enter commands directory to Octave, and a Documentation window. All of this will feel very familiar to Matlab users.
Octave will run on Windows, Macs, Linux and BSD systems. You can download the source and compile a version for your system if it isn’t available. GNU Octave downloads are available here.
I used the Windows binary installer to get the package on my Windows 8.1 laptop. The installer place 2 icons on my desktop, one for the CLI, and one to start the GUI version of GNU Octave.
The CLI version of GNU Octave on Windows is just a Command Prompt which is modified for the GNU Octave environment
The GNU Octave desktop has a rich array of interface components designed to make programming easier
In either the CLI or GUI environments, you can type the command ‘news’ to get a list of the latest features and changes.
I’ve been working with Matlab for a very long time, but I don’t always have access to a license, so the new changes in the Octave environment are very welcome. If you are looking for a numerical programming environment with a great deal of compatibility with Matlab, you should give Octave a try.