A veces considerado como la alternativa libre a Matlab, la realidad es que Octave, del proyecto GNU, es uno de los lenguajes de programación de más alto nivel cuando de hacer cálculos se trata. La conferencia Octave de este año se celebra del 19 al 21 de septiembre en Montreal, Canada.
Posibilidades generales
Octave posee una interfaz dotada con una hermosa línea de comandos para resolver problemas numéricos, tanto lineales como no-lineales. Octave suele tomarse por un CAS (Sistema Algebraico Computacional, por sus siglas en inglés), pero no lo es, más bien Octave está orientado al análisis numérico de gran profundidad. Con todo y su principal orientación, Octave está diseñado también para hacer experimentos numéricos y puede utilizarse como lenguaje de procesamiento por lotes (batch-oriented).
Aunque, como hemos dicho, GNU Octave no es un CAS, cuenta con todas las herramientas para resolver problemas de álgebra lineal y encontrar la raíz de ecuaciones no lineales o trabajar en la manipulación de polinomios.
Como todo software libre que se respete, Octave es altamente personalizable y puede modificarse desde los módulos cargados dinámicamente, escritos en C++ o C Fortran, por ejemplo. Aunque también puede modificarse, desde luego, en el lenguaje propio de GNU Octave.
El genial Octave Levenspiel
El nombre de Octave le fue dado al lenguaje por un creador, John W. Eaton, antiguo estudiante del genial ingeniero químico, Octave Levenspiel. De quien Eaton cuenta que, durante el tiempo que le dio clases, nunca dejó de sorprenderlo el modo avasallante y genial en que hacía cálculos mentales de lo más complejo.
De este modo, por si fuera poco, Eaton quiso dotar del impulso creador del profesor Levenspiel al por igual impresionante lenguaje de cálculo, GNU Octave.
Detalles técnicos
Entre lo más interesante de GNU Octave está el que cuenta con interprete de su propio lenguaje. Este tiene una sintaxis realmente muy parecida a Matlab y, como ya adelantábamos, permite una ejecución interactiva por lotes.
Octave, Además de correr en Linux también lo hace en Windows y se puede comportar como consola de ordenes (Shell). Sin embargo, también está perfectamente integrado con otro software GNU como Grace, por ejemplo o gnuplot, para generar gráficas con gran flexibilidad.
Octave está escrito en C++ usando las librerías estándar y, a partir de su versión 3.8.0 incluye, además de la línea de comandos, una interfaz de usuario gráfica.
Futuro para Octave
A pesar del extendido uso que va teniendo Octave para el entorno personal, se usa comúnmente en la industria y, sobre todo, en la Universidad, lo que nos garantiza un interesante periodo de desarrollo en los próximos años.
También en cuanto a su futuro desarrollo es importante destacar que GNU Octave es prácticamente compatible en su totalidad con Matlab e incluso miran los pequeños detalles de incompatibilidad como bugs, por lo que esto también nos ofrece perspectivas de futuro.
Por último, habrá que estar atentos a las nuevas versiones derivadas, sobre todo, de la Conferencia Octave de este año en Canadá y también unirse cuanto antes a la lista de correo de desarrolladores (maintainers@octave.org).