NPAC Technical Report SCCS-561
A Generalized expression Optimization Hook for C++ on High-Performance Architectures
David Edelsohn
Submitted April 1 1994
Abstract
C++ has gained broad acceptance as an object-oriented evolutionary
extension to the C language, but it severely constrains methods for
operating on class objects by forcing all data manipulation through an
interface which assumes that all basic operations can be implemented as
they are written: as unary or binary operators. C++ allows great
flexibility in the creation of complex data structures which can perform
the same functionality as built-in types of many other languages, but
unfortunately it does not allow an equivalent level of flexibility so that
operators acting on those data types can achieve the same level of
efficiency as their counterparts in language-level implementations. This
limitation becomes even more pronounced on high-performance computers whose
advanced features require considerable cooperation between the algorithm,
the compiler, and the architecture for maximum performance. This paper
describes a language enhancement proposal: a special member function which
interacts with overloaded operators as complete expressions.