Types that Reflect Changes of Object Usability Franz Puntigam Institut für Computersprachen, Technische Universität Wien Argentinierstraße 8, A-1040 Vienna, Austria E-mail: franz@complang.tuwien.ac.at Strong, static typing is useful because it can improve the readability, reliability and optimizability of programs. The usability of an object may change over time. However, conventional type systems for object-oriented languages presume that objects are always used in the same way. In this paper an extension of Ada's type concept is presented: Possible changes of object usabilities can be specified as part of type declarations for passive and active objects. This extension is compatible with inheritance and supports static type checking.