Software tools for efficient programming and scientific computing are two technologies labeled as `critical` to this nation's security and industrial growth. Object-oriented programming (OOP) offers a partial solution to increasing productivity during software development. OOP emphasizes modular and incremental development of applications. OOP enhances maintainability and reliability because changes that are needed in an implementation can be localized to a specific component. Object-oriented development also fosters reuse of software assets. Reuse leads to increased reliability, decreased development costs, and increased productivity. The cost of adopting an object-oriented, framework- centered approach is the run-time overhead imposed by object-oriented languages. Languages such as C++ provide a wide-spectrum of support to a programmer, but little assistance to compilers that must generate fast and efficient code. This research approaches the specification and implementation of class-specific program optimizations- optimizations defined by the user of an object-oriented programming system and attached to object types. By associating optimizations with classes, one preserves the class-oriented style of object-oriented programming while providing optimization information at a level of specification convenient to the developer. To implement the class-specific optimizations, Object Science Corporation proposes to draw on techniques for tree-rewriting systems. The work will be validated by inserting the optimizer into an existing C++ compiler.

Agency
National Science Foundation (NSF)
Institute
Division of Industrial Innovation and Partnerships (IIP)
Type
Standard Grant (Standard)
Application #
9461736
Program Officer
Michael F. Crowley
Project Start
Project End
Budget Start
1995-01-01
Budget End
1996-02-29
Support Year
Fiscal Year
1994
Total Cost
$75,000
Indirect Cost
Name
Object Science Corporation
Department
Type
DUNS #
City
Albuquerque
State
NM
Country
United States
Zip Code
87104