Types for Active Objects Based on Trace Semantics

  • Franz Puntigam
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT)


Static typing and subtyping are useful for the support of incremental refinement and reuse in object-oriented languages. Although demanded, there is currently no appropriate type model for concurrent object-oriented languages that supports dynamic behavior modifications. We propose a type model based on a process calculus with trace semantics and demonstrate its use in a simple language. This model is an extension of conventional models for types and subtyping and ensures that all messages are processed even if object behavior is modified dynamically.


type model subtyping concurrency process algebra 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Agha, G. (1986) Actors: A Model of Concurrent Computation in Distributed Systems. The MIT Press.Google Scholar
  2. Baeten, J.C.M. and Weijland, W.P. (1990) Process Algebra. Number 18 in Cambridge Tracts in Theoretical Computer Science. Cambridge University Press.Google Scholar
  3. Cardelli, L. and Wegner, P. (1985) On understanding types, data abstraction, and polymorphism. ACM Computing Surveys, 17 (4), 471–522.CrossRefGoogle Scholar
  4. Cook, W.R. and Hill, W.L. and Canning, P.S. (1990) Inheritance is not subtyping. In Conference Record of the 17th Symposium on Principles of Programming Languages, San Francisco, 125–135.Google Scholar
  5. Frolund, S. (1992) Inheritance of synchronization constraints in concurrent object-oriented programming languages. In L. Madsen, editor, Proceedings ECOOP’92 number 615 in Lecture Notes in Computer Science. Springer-Verlag.Google Scholar
  6. Gay, S.J. (1993) A sort inference algorithm for the polyadic 7r-calculus. In Conference Record of the 20th Symposium on Principles of Programming Languages.Google Scholar
  7. Halstead, R.H. Multilisp: A language for concurrent symbolic computation. ACM Trans-actions on Programming Languages and Systems, 7(4) 501–538.Google Scholar
  8. Kobayashi, N. and Yonezawa, A. (1994) Type-theoretic foundations for concurrent object-oriented programming. ACM SIGPLAN Notices 29(10), 31–45. Proceedings 00PSLA’94.CrossRefGoogle Scholar
  9. Liskov, B. and Wing, J.M. (1993) Specifications and their use in defining subtypes. ACM SIGPLAN Notices 28(10), 16–28. Proceedings OOPSLA’93.CrossRefGoogle Scholar
  10. Milner, R. (1989) Communication and Concurrency. Prentice-Hall, New York.zbMATHGoogle Scholar
  11. Milner, R. and Parrow, J. and Walker, D. (1992) A calculus of mobile processes (parts I and II). Information and Computation, 100 1–77.CrossRefMathSciNetzbMATHGoogle Scholar
  12. Nielson, F. and Nielson, H.R. (1993) From CML to process algebras. In Proceedings CONCUR’93 number 715 in Lecture Notes in Computer Science, 493–508. Springer-Verlag.Google Scholar
  13. Nierstrasz, O. (1993) Regular types for active objects. ACM SIGPLAN Notices 28(10), 1–15. Proceedings OOPSLA’93.CrossRefGoogle Scholar
  14. Pierce, B. and Sangiorgi, D. (1993) Typing and subtyping for mobile processes. In Proceedings LICS’93.Google Scholar
  15. Puntigam, F. (1995) Flexible types for a concurrent model. In Proceedings of the Workshop on Object-Oriented Programming and Models of Concurrency Torino.Google Scholar
  16. Puntigam, F. (1995) Type specifications with processes. In Proceedings FORTE’95. IFIP, Montreal.Google Scholar
  17. Vasconcelos, V.T. (1994) Typed concurrent objects. In Proceedings ECOOP’94 number 821 in Lecture Notes in Computer Science, pages 100–117. Springer-Verlag.Google Scholar
  18. Vasconcelos, V.T. and Honda, K. (1993) Principal typing schemes in a polyadic pi-calculus. In Proceedings CONCUR’93.Google Scholar
  19. Wegner, P. (1990) Concepts and paradigms of object-oriented programming. OOPS Messenger, 1(1), 7–87.CrossRefGoogle Scholar
  20. Wegner, P. and Zdonik, S.B. (1988) Inheritance as an incremental modification mechanism or what like is and isn’t like. In S. Gjessing and K. Nygaard, editors, Proceedings ECOOP’88 number 322 in Lecture Notes in Computer Science, pages 55–77. Springer-Verlag.Google Scholar

Copyright information

© IFIP International Federation for Information Processing 1997

Authors and Affiliations

  • Franz Puntigam
    • 1
  1. 1.Technische Universität WienInstitut für ComputersprachenViennaAustria

Personalised recommendations