Skip to main content

OPUS: a Calculus for Modelling Object-Oriented Concepts

  • Conference paper
OOIS’94

Abstract

We propose a very concise calculus for modelling object-oriented concepts such as objects, message sending, encapsulation and incremental modification. We show how to deal with recursion and provide some object-oriented examples. State and encapsulated inheritance are modelled by means of an incremental modification operator.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. (Abadi et al., 1994) M. Abadi and L. Cardelli. A Theory of Primitive Objects: Untyped and First- order Systems. Theoretical Aspects of Computing Software ’94 Proceedings, Springer- Verlag, 1994

    Google Scholar 

  2. (Bracha et al., 1990) G. Bracha and W. Cook. Mixin-based Inheritance. Joint OOPSLA/ECOOP ’90 Conference Proceedings, pp. 303–311, ACM Press, 1990

    Google Scholar 

  3. (Canning et al., 1989) P. Canning, W. Cook, W. Hill and W. Olthoff. Interfaces for Strongly- Typed Object-Oriented Programming. OOPSLA ’89 Conference Proceedings, pp. 457–467, ACM Press, 1989

    Google Scholar 

  4. (Cardelli, 1988) L. Cardelli. A semantics of multiple inheritance. Mormation and Computation 76, pp. 138–164, Academic Press, 1988

    Google Scholar 

  5. (Cardelli et al., 1989) L. Cardelli and J. Mitchell. Operations on Records. Proceedings on Mathematical Foundations of Programming Semantics, LNCS 442, Springer-Verlag, 1989

    Google Scholar 

  6. (Castagna et al., 1992) G. Castagna, G. Ghelli and G. Longo. A Calculus for Overloaded Functions with Subtyping. LISP and Functional Programming ’92 Conference Proceedings, pp. 182–192, ACM Press, 1992

    Google Scholar 

  7. (Cook, 1989) W. Cook. A Denotational Semantics of Inheritance Ph.D.-Thesis, Brown University, 1989

    Google Scholar 

  8. (Cook et al., 1989) W. Cook and J. Palsberg. A Denotational Semantics of Inheritance and its Correctness. OOPSLA ’89 Conference Proceedings, pp. 433–444, ACM Press, 1989.

    Google Scholar 

  9. (Dami, 1994) L. Dami. Software Composition: Towards an Integration of Functional and Object- Oriented Approaches Ph.D.-Thesis, University of Geneva, 1994

    Google Scholar 

  10. (de Bruijn, 1972) N. de Bruijn.Lambda-Calculus with Nameless Dummies, a Tool for Automatic Formula Manipulation Indag. Mat. 34, pp. 381–392,1972

    Google Scholar 

  11. (Hofmann et al., 1993) M. Hofmann and B. Pierce. A Unifying Type-Theoretic Framework for Objects. Journal of Functional Programming 1, Cambridge University Press, 1993

    Google Scholar 

  12. (Milner, 1991) R. Milner. The Poliadic n-calculus: A tutorial. Technical Report ECS-LFCS-91–180, University of Edinburgh, 1991

    Google Scholar 

  13. (Nierstrasz, 1992) O. Nierstrasz. Towards an Object Calculus. ECOOP Workshop on Object- Based Concurrent Computing, LNCS 612, Springer-Verlag, 1992

    Google Scholar 

  14. (Pierce et al., 1994) B. Pierce and D. Turner. Simple Type-Theoretic Foundations for Object- Oriented Programming. Journal of Functional Programming, 1994

    Google Scholar 

  15. (Steyaert, 1994) P. Steyaert. Open Design of Object-Oriented Languages, a Foundation for Specialisable Reflective Language Frameworks Ph.D.-Thesis, Vrije Universiteit Brussel, 1994

    Google Scholar 

  16. (Steyaert et al., 1993) P. Steyaert, W. Codenie, T. D’Hondt, K. De Hondt, C. Lucas and M. Van Limbergen. Nested Mixin-Methods in Agora. ECOOP ’93 Conference Proceedings, pp. 197–219, Springer-Verlag, 1993

    Google Scholar 

  17. (Snyder, 1987) A. Snyder. Inheritance and the Development of Encapsulated Software Components. Research Directions in Object-Oriented Programming, MIT Press, 1987

    Google Scholar 

  18. (Wegner et al., 1988) P. Wegner and S. Zdonik. Inheritance as an Incremental Modification Mechanism, or What Like is and Isn’t Like. ECOOP ’88 Conference Proceedings, pp. 55–77, Springer-Verlag, 1988

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag London Limited

About this paper

Cite this paper

Mens, T., Mens, K., Steyaert, P. (1995). OPUS: a Calculus for Modelling Object-Oriented Concepts. In: Patel, D., Sun, Y., Patel, S. (eds) OOIS’94. Springer, London. https://doi.org/10.1007/978-1-4471-3016-1_12

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3016-1_12

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19927-4

  • Online ISBN: 978-1-4471-3016-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics