This research project investigates the tight integration of program generation facilities into typed languages. Present program generation technology can be classified as either integrated with the language environment, as are macros in Lisp, or external to the language, as are yacc and lex for C. Within language-integrated generators, the taxonomy can be further refined into tightly-integrated generators, exemplified by reflective systems, and loosely-integrated generators, such as macro preprocessors. Tight integration of generators into typed languages gives rise to a number of problems to which solutions must be found. However, the benefits of increased expressiveness, efficiency, productivity, reusability, reliability, and quality makes research into solving these problems worthwhile. If the project is successful, it will provide a clearer semantics to a reflective ML-like language tailored for building generator systems, illustrate how such a reflective language can be restricted to maintain the invariants of strong typing, design a meta-programming system to prevent variable capture or design hiding, and build a programming environment where generated code can be seamlessly integrated with code produced in more traditional ways.

Agency
National Science Foundation (NSF)
Institute
Division of Information and Intelligent Systems (IIS)
Type
Standard Grant (Standard)
Application #
9625462
Program Officer
Ephraim P. Glinert
Project Start
Project End
Budget Start
1996-10-15
Budget End
2000-03-31
Support Year
Fiscal Year
1996
Total Cost
$325,007
Indirect Cost
Name
Oregon Graduate Institute of Science & Technology
Department
Type
DUNS #
City
Beaverton
State
OR
Country
United States
Zip Code
97006