ABSTRACTS: USENIX 1994 Very High level Languages Symposium Check out the new USENIX Web site.

Compiling MATLAB


Stephen C. Johnson
Melismatic Software

Cleve Moler
The MathWorks, Inc.

Abstract

MATLAB is a high level language oriented towards scientific and engineering applications. It has evolved over a ten year history to become a popular, flexible, powerful, but still simple language, and has served as an effective platform for over a dozen "toolboxes" supporting everything from symbolic computation to digital filter design, control theory, and neural nets. Designed to be used interactively, MATLAB also supports the ability to define functions and scripts, and dynamically link with C and FORTRAN programs. This paper discusses a project to provide a compiler for MATLAB. The focus of this paper is on techniques that might be useful for other high-level languages, and the parts of such languages that resists compilation. Our constructed MATLAB compiler is in beta test, and has demonstrated speedups over interpretation of up to 300 times on practical programs.


Download the full text of this paper in PDF (1,600,000 bytes)

To Become a USENIX Member, please see our Membership Information.