Advertisement

Omicron, An Object-Oriented Calculus

  • Else K. Nordhagen
Chapter
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT)

Abstract

Object-oriented technology featuring the concepts of object identity, instance creation, encapsulation, dynamic binding and inheritance are increasingly popular when designing systems, but there is a lack of formalisation tools. The common way to formalise object-oriented models is by translating from object-oriented models to models which are supported by existing calculi, ie, functional models (lambda calculus) or models of communicating processes (eg, π-calculus). Such translations are not ideal as it may not be intuitive how definitions and proofs done in these calculi map to object-oriented models. This paper presents a calculus which is based on the object-oriented concepts. Reasoning about object-oriented systems can then be done without changing paradigm.

Keywords

Formal theory object-oriented models distributed systems 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abadi, Martin and Cardelli, Luca, (1994) A theory of primitive objects, Digital Equipment Corporation, DEC-SRC, Shorter versions in European Symposium om Programming, and in Theoretical Aspects of Computer Science 1994Google Scholar
  2. Agha, Gul, (1986) A Model of Concurrent Computation in Distributed Systems, MIT Press, Cambridge, Mass.Google Scholar
  3. America, Pierre, (1987) Inheritance and Subtyping in a Parallell Object-Oriented Language, European Conference on Object-Oriented Systems 1987, published in LNCS 276, pp. 234–242.Google Scholar
  4. Blair, Gordon, Gallagher, John, Hutchison, David and Shephard, Dough, (1991) Object–Oriented Languages, Systems and Applications, Pitman Publishing, London, ISBN: 0–27303132–5Google Scholar
  5. Chambers, Craig, Ungar, David, Chang, Bay-Wei and Hölzle, Urs, (1991) Parent and Shared Parts of Objects: Inheritance and Encapsulation in SELF, in Lisp and Symbolic Computation 1991, 4: 3Google Scholar
  6. Gamma, Erich, Helm, Richard, Johnson, Ralph and Vlissides, John, (1994) Design Patterns: Elements of Reusable Object–Oriented Software Addison–Wesley, 416, ISBN: 0–201–63361–2Google Scholar
  7. Goldberg, Adele and Robson, Dave, (1983) Smalltalk-80: The Language and Its Implementation, Addison-Wesley, Reading, Mass.zbMATHGoogle Scholar
  8. Jacobson, Ivar, Bylund, Stefan, Jonsson, Patric and Ehneboom, Staffan, (1995) Using contracts and use cases to build pluggable architectures, in Journal of Object-Oriented Programming May 1995, 8: 2, pp. 18–76Google Scholar
  9. Milner, R., Tofte, M. and Harper, R., (1990) The definition of Standard ML The MIT Press, ISBN: 0–262–12355–9Google Scholar
  10. Nierstrasz, Oscar, (1993) Composing Active Objects, in Research Directions in Concurrent Object-Oriented Programming, ed: G. Aga, P. Wegner and A. Yonezawa, The MIT Press, Cambridge, Massachusetts, pp. 151–171, ISBN: 0–262-01139–5Google Scholar
  11. Nordhagen, Else K., (1996) A Formal Framework for Verification of Object Component Substitutability, Doctoral Thesis, Department of Informatics, University of Oslo, Forthcomming spring 1996Google Scholar
  12. Plotkin, G., (1981) A structural approach to operational semantics Computer Science Department, Aarhus University, DAIMI FN-19Google Scholar
  13. Stroustrup, Bjarne, (1986) The C++ Programming Language Addison WesleyzbMATHGoogle Scholar
  14. Ungar, David, Chambers, Craig, Chang, Bay-Wei and Hölzle, Urs, (1991) Organising Programs Without Classes, in Lisp and Symbolic Computation 1991, 4: 3Google Scholar
  15. Walker, David, (1991) 7t-Calculus Semantics of Object-Oriented Programming Languages, TACS 1991, published in LNCS 526, pp. 532–547.Google Scholar
  16. Wegner, Peter, (1994) Models and Paradigms of Interaction in Object–Based Distributed Programming, ECOOP’93 Workshop, Vol. 791, ed: R. Guerraoui, O. Nierstrasz and M. Riveill, Springer–Verlag, pp. 1–32, ISBN: 3–540–57932–XCrossRefGoogle Scholar
  17. Wegner, Peter and Zdonick, Stanley B., (1988) Inheritance as an Incremental Modification Mechanism or What Like Is or Isn’t Like, European Conference on Object-Oriented Programming 1988, Oslo, Norway, published in LNCS 322, pp. 55–77.Google Scholar

Copyright information

© IFIP International Federation for Information Processing 1997

Authors and Affiliations

  • Else K. Nordhagen
    • 1
  1. 1.Department ofInformaticsUniversity of OsloOsloNorway

Personalised recommendations