Andrew C. Myers
Programming Methodology Group Memo 88This research was supported in part by the Advanced Research Projects Agency of the Department of Defense, monitored by the Office of Naval Research under contract N00014-91-J-4136 and in part by the National Science Foundation under Grant CCR-8822158.
The authors also wish to thank all the members of the Programming
Methodology Group at MIT for their help and suggestions; there were
many group meetings that helped us refine the Theta design.
MIT Laboratory for Computer Science
Cambridge, MA 02139
Wed Feb 08 14:20:14 EST 1995
This document describes a new programming language called Theta. Theta is a sequential, strongly-typed, object-oriented language. It provides separate mechanisms for type hierarchy, inheritance, and parametric polymorphism. It also provides separate mechanisms for specifications, which define the interfaces of new abstractions, and code that implements the new abstractions, and it allows multiple implementations of types and routines. It has a module mechanism that encapsulates the details of type and routine implementations, while allowing related implementations to share implementation-specific information. Theta is largely derived from CLU, but has also been influenced by Trellis/Owl, Modula-3, C++, and Emerald.