Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Array morphology
Bernecky R. ACM SIGAPL APL Quote Quad24 (1):6-16,1993.Type:Article
Date Reviewed: Nov 1 1994

Certain problems in compiling dynamic, array-oriented languages such as APL are addressed. Compiling APL is difficult because the language design favors consistent treatment of its high-level data structures, multidimensional arrays, over efficient use of the underlying computer hardware. Analysis of how data arrays evolve during program execution, named “array morphology” by the author, discloses information needed by the compiler to optimize the code it generates. In the absence of such information, the compiler would need to provide much the same environment and consequent overhead as a traditional APL interpreter. In addition to array analysis, the use of “assertions” can improve the quality of compilation. An assertion in APL is an executable statement that determines the properties of a data array more precisely than if there were no assertion. Much of APL’s execution overhead involves checking arrays to make sure they are treated correctly when numerical functions act on them. By its action, an assertion greatly narrows the amount of checking required at runtime, thus allowing a compiler to produce better code.

This paper is well organized and well written, and contains a solid list of references. It thoroughly covers the analysis of arrays needed for optimized compilation of APL code. The paper would appeal to those interested in compilers, code optimization, and the internal workings of APL systems.

Reviewer:  G. R. Mayforth Review #: CR117978
Bookmark and Share
 
Optimization (D.3.4 ... )
 
 
Apl (D.3.2 ... )
 
 
Assertions (F.3.1 ... )
 
 
Compilers (D.3.4 ... )
 
 
Syntax (D.3.1 ... )
 
 
Studies Of Program Constructs (F.3.3 )
 
Would you recommend this review?
yes
no
Other reviews under "Optimization": Date
Finite constants
Steffen B., Knoop J. Theoretical Computer Science 80(2): 303-318, 1991. Type: Article
May 1 1992
Optimizing schemes for structured programming language processors
Tsuji T., Ellis Horwood, Upper Saddle River, NJ, 1990. Type: Book (9780138551230)
Apr 1 1992
Optimizing compilers for parallel computers (videotape)
Allen F., University Video Communications, Stanford, CA, 1991. Type: Book
Aug 1 1993
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy