An APL compiler
Efficiently computing static single assignment form and the control dependence graph
ACM Transactions on Programming Languages and Systems (TOPLAS)
ESOP '94 Selected papers of ESOP '94, the 5th European symposium on Programming
A Scheme for the Automatic Inference of Variable Types
Journal of the ACM (JACM)
A case for source-level transformations in MATLAB
Proceedings of the 2nd conference on Domain-specific languages
Discrete Mathematical Structures with Applications to Computer Science
Discrete Mathematical Structures with Applications to Computer Science
Results from a Parallel MATLAB Compiler
IPPS '98 Proceedings of the 12th. International Parallel Processing Symposium on International Parallel Processing Symposium
Compiler techniques for matlab programs
Compiler techniques for matlab programs
An algebraic array shape inference system for MATLAB®
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Dimension Abstraction Approach to Vectorization in Matlab
Proceedings of the International Symposium on Code Generation and Optimization
Hi-index | 0.00 |
This paper deals with the problem of statically inferring the shape of an array in languages such as MATLAB. Inferring an array's shape is desirable because it empowers better compilation and interpretation; specifically, knowing an array's shape could permit reductions in the number of run-time array conformability checks, enable memory preallocation optimizations, and facilitate the in-lining of "scalarized" code. This paper describes how the shape of a MATLAB expression can be determined statically, based on a methodology of systematic matrix formulations. The approach capitalizes on the algebraic properties that underlie MATLAB's shape semantics and exactly captures the shape that the MATLAB expression assumes at run time. Some of the highlights of the approach are its applicability to a large class of MATLAB functions and its uniformity. Our methods are compared with the previous shadow variable scheme, and we show how the algebraic view allows inferences not deduced by the traditional approach.