ASPECT-ORIENTED PROGRAMMING OF SPARSE MATRIX CODE
The expressiveness conferred by high-level and object-oriented
languages is often impaired by concerns that cross-cut the basic
functionality. Execution time, data representation, and numerical
stability are three such concerns that are of great interest to
numerical analysts. Using aspect-oriented programming we have created
AML, a system for sparse matrix computation that deals with these
concerns separately and explicitly while preserving the expressiveness
of the original functional language. The resulting code maintains the
efficiency of highly tuned low-level code, yet is ten times shorter.