9870253 The goal of this grant is the development of very expressive, yet provably statically type-safe, object oriented programming languages. The following topics will be the main focus of this work: (1) The design of module systems for object-oriented programming languages. The module system will be designed and implemented as an extension of the language LOOM. (2) The application of the knowledge learned in the design of LOOM to extend the expressiveness of Java by adding a "ThisType" construct and parametric polymorphism. This work will include adding a generalization of the ThisType construct to support the equivalent of Beta's virtual types in a type-safe way. (3) The development of materials to better communicate the results of recent work on the foundations of object-oriented languages to a broader audience. (4) The extension of preliminary work on the design of a statically-typed concurrent object-oriented language. Major problems to be solved include reserving objects during method calls and providing more robust constructs to make it easier to avoid deadlock. Techniques for investigating all of these areas include both formal methods (e.g., proofs of type safety) as well as the construction of interpreters and/or compilers to support experimentation with the new languages and designs.***