Having past experience with Octave, I can give insights about GNU Octave.
What is GNU Octave ?
Octave is a numerical computation software that is open sourced. One can consider it as the brother of Matlab but you can see what's in it. As far as I know it is not a registered company. However people can use it for commercial purposes. It's licensed that way. Many organizations such as CERN use it for computing.
What's unique about Octave ?
Octave is not just m-file scripting but also has C++/C. This feature makes it unique since one can have performance advantages with this unique feature. Let's say there are 3 loops in m-file which have very large runtimes, however one can run those loops in C/C++ and have slower runtime. Octave gives a unique feature that one can run C/C++ code alongside m-file scripts.
How to use Octave?
As far as I have used Octave, it runs smoothly on Linux systems( we haven't tested all, but works fine with Ubuntu and Mint ), on windows( client ) one can do m-file scripting but it's very difficult to access the C/C++ ability, it is still a topic to how to use it on Microsoft Visual Studio, but one can try.
You can find detailed instructions here :