MATLAB
A proprietary numerical computing environment and programming language developed by MathWorks for matrix operations, data analysis, and algorithm development.
Created by Cleve Moler
MATLAB (MATrix LABoratory) is a proprietary numerical computing environment and programming language developed by MathWorks. Originally created as a simple matrix calculator for students, it has grown into one of the most widely used tools in engineering, science, and mathematics.
History & Origins
In the late 1970s, Cleve Moler, a mathematics professor at the University of New Mexico, wanted his students to use the powerful LINPACK and EISPACK Fortran libraries for matrix computation without having to learn Fortran. He wrote the original MATLAB in Fortran — a simple interactive program with approximately 71 built-in functions where the matrix was the only data type.
Moler distributed MATLAB freely to universities for several years. In 1983, Jack Little, an engineer who encountered MATLAB at Stanford, recognized its commercial potential. Little and Steve Bangert rewrote MATLAB in C, adding toolboxes, graphics capabilities, and extensibility. Together with Moler, they founded The MathWorks in December 1984.
The Name
MATLAB stands for MATrix LABoratory, reflecting its origins as a tool built around matrix operations. Every value in MATLAB is fundamentally a matrix (even a scalar is a 1x1 matrix), which makes linear algebra operations natural and concise.
The MATLAB Ecosystem
MATLAB’s power comes not just from the base language but from its extensive toolbox ecosystem:
- Simulink - Graphical environment for modeling, simulating, and analyzing dynamic systems
- Signal Processing Toolbox - Digital and analog signal processing
- Image Processing Toolbox - Image analysis and computer vision
- Statistics and Machine Learning Toolbox - Statistical analysis and ML algorithms
- Deep Learning Toolbox - Neural network design and training
- Control System Toolbox - Control system design and analysis
MathWorks offers over 100 specialized toolboxes covering domains from aerospace to bioinformatics.
Language Design
MATLAB’s syntax is designed for mathematical clarity:
- Array-first design - Operations naturally work on entire arrays and matrices
- 1-based indexing - Arrays start at index 1 (matching mathematical convention)
- Dynamic typing - No type declarations needed
- Interactive REPL - Immediate feedback through the command window
- Built-in plotting - Visualization is a first-class feature
MATLAB vs. GNU Octave
Because MATLAB is commercial software, the open-source community created GNU Octave as a free, largely compatible alternative. Octave was conceived around 1988 and aims to run most MATLAB .m files without modification.
| Feature | MATLAB | GNU Octave |
|---|---|---|
| License | Commercial (paid) | Free (GPL) |
| Simulink | Included (with license) | Not available |
| Toolboxes | 100+ official | Community packages |
| IDE | MATLAB Desktop | QtOctave / CLI |
| Compatibility | Reference implementation | Largely compatible |
For this site’s Docker examples, we use GNU Octave to demonstrate MATLAB-compatible code without requiring a commercial license.
Modern MATLAB
MATLAB continues to evolve with twice-yearly releases (the R####a/R####b cadence began around 2006):
- Live Editor - Interactive notebooks mixing code, output, and formatted text (similar to Jupyter)
- App Designer - Drag-and-drop GUI builder for MATLAB applications
- Code Generation - Generate C/C++ code from MATLAB for embedded systems
- GPU Computing - Run MATLAB code on GPUs for parallel computation
- Cloud Integration - MATLAB Online for browser-based access
While Python has gained significant ground in data science and machine learning, MATLAB remains deeply embedded in engineering disciplines, particularly in control systems, signal processing, and model-based design, where its Simulink toolbox has no direct open-source equivalent.
Timeline
Notable Uses & Legacy
Aerospace & Defense
Used extensively by NASA, Boeing, and defense contractors for flight simulation, guidance systems, and satellite communications.
Signal Processing
Industry standard for audio, image, and radar signal processing, with dedicated toolboxes used across telecommunications and defense.
Academic Research
Standard tool in engineering and science curricula worldwide, particularly for teaching linear algebra, control systems, and numerical methods.
Automotive Engineering
MATLAB and Simulink are widely used for model-based design, powertrain simulation, and autonomous driving development.
Finance
Used for quantitative analysis, risk modeling, and algorithmic trading strategy development.
Language Influence
Influenced By
Influenced
Running Today
Run examples using the official Docker image:
docker pull gnuoctave/octave:9.4.0Example usage:
docker run --rm -v $(pwd):/app -w /app gnuoctave/octave:9.4.0 octave --no-gui --no-window-system hello.m