A Framework for Strong Typing and Type Inference in (Persistent) Object Models

  • Alfons Kemper
  • Guido Moerkotte
Conference paper


In this paper a coherent framework of subtyping is developed that achieves strong typing in (persistent) object models without compromising flexibility and expressiveness. The typing framework is based on the concept of substitutability-meaning that from the type consistency perspective objects exhibiting a particular functional characteristic are substitutable for objects of another kind without compromising type safety. We deduce substitutability from the functional specification of object types, called the type signature. Utilizing our framework we show that inheritance-based subtyping on tuple-structured types cannot generally be extended to set-structured or any other collection types, e.g., lists, without sacrificing static verifiability of type consistency.


Object Model Collection Type Type Inference Type Definition Strong Typing 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    M. Atkinson, F. Bancilhon, D. J. DeWitt, K. R. Dittrich, D. Maier, and S. Zdonik. The object-oriented database system manifesto. In Proc. of the DOOD Conference, pages 40–57, Kyoto, Japan, Dec 1989.Google Scholar
  2. [2]
    F. Bancilhon, T. Briggs, S. Khoshafian, and P. Valduriez. FAD, a powerful and simple database language. In Proc. of The Conf. on Very Large Data Bases (VLDB), pages 97105, Brighton, U.K., Sep 1987.Google Scholar
  3. [3]
    L. Cardelli and P. Wegner. On understanding types, data abstraction, and polymorphism. ACM Computing Surveys, 17 (4): 471–522, Dec 1985.CrossRefGoogle Scholar
  4. [4]
    G. Copeland and D. Maier. Making Smalltalk a database system. In Proc. of the ACM SIGMOD Conf. on Management of Data, pages 316–325, 1984.Google Scholar
  5. [5]
    Dahl and K. Nygaard. Simula, an Algol-based simulation language. CACM, 9: 671–678, 1966.CrossRefGoogle Scholar
  6. [6]
    S. Danforth and C. Tomlinson. Type theories and object oriented programming. ACM Computing Surveys, 20 (1): 2972, Mar 1988.MathSciNetGoogle Scholar
  7. [7]
    J. A. Goguen and D. Wolfram. On types and POOPS. In Proc. IFIP TC 2 Working Conference on Database Semantics: Object Oriented Databases—Analysis, Design, and Construction, Windermere, UK, Jun 90.Google Scholar
  8. [8]
    A. Goldberg and D. Robson. Smalltalk-80: The Language and its Implementation. Addison-Wesley, 1983.Google Scholar
  9. [9]
    A. Kemper and G. Moerkotte. Correcting anomalies of standard inheritance—a constraint based approach. In Proc. Intl. Conf. ova Database and Expert Systems Applications, pages 49–55, Wien, Austria, Aug 90.Google Scholar
  10. [10]
    A. Kemper, G. Moerkotte, 11.-D. Walter, and A. Zachmann. GOM: a strongly typed, persistent object model with polymorphism. In Proc. of the BTW Conf., pages 198–217, Mar 1991. Springer-Verlag, Informatik-Fachberichte Nr. 270.Google Scholar
  11. [11]
    W. Kim, H. T. Chou, and J. Banerjee. Operations and implementation of complex objects. IEEE Trans. Software Eng., 14 (7): 985–996, Jul 1988.CrossRefGoogle Scholar
  12. [12]
    C. Lécluse and P. Richard. The 02 database programming language. In Proc. of The Conf. on Very Large Data Bases (VLDB), pages 411–422, Amsterdam, NL, Sep 1989.Google Scholar
  13. [13]
    R. Milner. A theory of type polymorphism. Journal of Computer and System Sciences, 17: 378–375, 1978.MathSciNetCrossRefGoogle Scholar
  14. [14]
    A. Ohori, P. Buneman, and V. Breazu-Tannen. Database programming in Machiavelli: A polymorphic language with static type inference. In Proc. of the ACM SIGMOD Conf. on Management of Data,Portland, OR, 19Ei9.Google Scholar
  15. [15]
    S. Zdonik and D. Maier. Fundamentals of object-oriented databases. In S. Zdonik and D. Maier, editors, Readings in Object-Oriented Databases, pages 1–32. Morgan-Kaufman Publ. Co., 89.Google Scholar

Copyright information

© Springer-Verlag Wien 1991

Authors and Affiliations

  • Alfons Kemper
    • 1
  • Guido Moerkotte
    • 2
  1. 1.Lehrstuhl für Informatik IIIRWTH AachenAachenGermany
  2. 2.Fakultät für InformatikUniversität KarlsruheKalrsruheGermany

Personalised recommendations