skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: ROSETTA: the compile-time recognition of object-oriented library abstractions and their use within user applications

Conference ·
OSTI ID:15005481

Libraries arise naturally from the increasing complexity of developing scientific applications, the optimization of libraries is just one type of high-performance optimization. Many complex applications areas can today be addressed by domain-specific object-oriented frameworks. Such object-oriented frameworks provide an effective compliment to an object-oriented language and effectively permit the design of what amount to essentially domain-specific languages. The optimization of such a domain-specific library/language combination however is particularly complicated due to the inability of the compiler to optimize the use of the libraries abstractions. The recognition of the use of object-oriented abstractions within user applications is a particularly difficult but important step in the optimization of how objects are used within expressions and statements. Such recognition entails more than just complex pattern matching. The approach presented within this paper uses specially built grammars to parse the C++ representation. The C++ representation is itself obtained using a modified version of the SAGE II C/C++ source code restructuring tool which is inturn based upon the Edison Design Group (EDG) C++ front-end. ROSETTA is a tool which automatically builds grammars and parsers from class definitions, associated parsers parse abstract syntax trees (ASTs) of lower level grammars into ASTs of higher level grammars. The lowest level grammar is that associated with the full C++ language itself, higher level grammars specialize the grammars specific to user defined objects. The grammars form a hierarchy and permit a high-degree of specialization in the recognition of complex use of user defined abstractions.

Research Organization:
Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Sponsoring Organization:
US Department of Energy (US)
DOE Contract Number:
W-7405-ENG-48
OSTI ID:
15005481
Report Number(s):
UCRL-JC-141943; TRN: US200322%%465
Resource Relation:
Conference: Joint Association for Computing Machinery Java Grande - International Scientific Computing in Object-Oriented Parallel Environments 2001 Conference, Palo Alto, CA (US), 06/02/2001--06/04/2001; Other Information: PBD: 8 Jan 2001
Country of Publication:
United States
Language:
English