The goal of this research is to improve the design of statically-typed object-oriented programming languages, especially with regard to issues of programming in the medium to large scale. Research will focus on:

1. Module systems for object-oriented languages: Modules provide support for organizing code, abstraction barriers to hide information, and support for separate compilation. However, current module systems lack the flexibility to capture a number of common ways in which to design programs in object-oriented languages. 2. Simultaneous modification of mutually recursive types and classes: This research will develop ways to support incremental modification of mutually recursive types while preserving type safety and important relations between types and classes. 3. Typed intermediate languages and virtual machines for object-oriented languages: Run-time systems like the target virtual machines for Java and C# lack support for advanced object-oriented languages and module systems. Exploring compilation techniques and virtual machines to support these features is necessary to ensure their eventual adoption. This research will continue using LOOM as a test bed for further investigations into the best way to support features of object-oriented languages, while also investigating how to use the best of these ideas to enhance real languages like Java and its successors.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Communication Foundations (CCF)
Application #
0632458
Program Officer
Sol J. Greenspan
Project Start
Project End
Budget Start
2006-04-15
Budget End
2007-06-30
Support Year
Fiscal Year
2006
Total Cost
$130,704
Indirect Cost
Name
Pomona College
Department
Type
DUNS #
City
Claremont
State
CA
Country
United States
Zip Code
91711