Skip to main content
Log in

Modelling multiple inheritance with colimits

  • Published:
Formal Aspects of Computing

Abstract

A categorical semantics of multiple inheritance is presented, in which the inheritance relations between program entities are represented as commutative diagrams in a suitable category, and multiple inheritance is then modelled with colimits of such diagrams. It is shown that the informal semantics of multiple inheritance used in existing object-oriented programming languages conforms to, or is consistent with, this model.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Borning, A. H. and Ingalls, D. H. H.: Multiple Inheritance in Smalltalk-80,Proc. Nat. Conf. on Artificial Intelligence, Pittsburgh, pp. 234–237, August 1982.

  2. Bobrow, D. G., Kahn, K., Kiczales, G., Masinter, L., Stefik, M. and Zdybel, F.: CommonLoops: Merging Lisp and Object-Oriented Programming,Proc. ACM Conf. on Object-Oriented Systems, Languages, and Applications, Portland, Oregon, pp. 17–29, September 1986.

  3. Burstall, R. and Goguen, J.: Putting Theories Together to Make Specifications,Proc. 5th IJCAI, Cambridge, Massachusetts, pp. 1045–1058, 1977.

  4. Cardelli, L.: A Semantics of Multiple Inheritance.Information and Computation, 76 (2/3), 138–164 (1988).

    Google Scholar 

  5. Cardelli, L. and Wegner, P.: On Understanding Types, Data Abstraction, and Polymorphism.ACM Computing Surveys, 17(4), 471–522 (1985).

    Article  Google Scholar 

  6. Goguen, J. A. and Meseguer, J.: Extensions and Foundations of Object-Oriented Programming,Proc. Object-Oriented Programming Workshop. Sigplan Notices, 21(10), 153–162 (1986).

    Google Scholar 

  7. Lieberman, H.: Using Prototypical Objects to Implement Shared Behaviour in Object Oriented Systems,Proc. ACM Conf. on Object-Oriented Systems, Languages, and Applications, Portland, Oregon, pp. 214–223, September 1986.

  8. MacQueen, D. B., Plotkin, G. D. and Sethi, R.: An Ideal Model for Recursive Polymorphic Types.Information and Control, 71, 95–130 (1986).

    Article  Google Scholar 

  9. Meyer, B., Nerson, J.-M. and Matsuo, M.: Eiffel: Object-Oriented Design for Software Engineering,Proc. 1st European Software Engineering Conference, France, pp. 221–229, September 1987.

  10. Moon, D. A.: Object-Oriented Programming with Flavors,Proc. ACM Conf. on Object-Oriented Systems, Languages, and Applications, Portland, Oregon, September 1986.

  11. Schaffert, C., Cooper, T., Bullis, B., Killian, M. and Wilpolt, C.: An Introduction to Trellis/Owl,Proc. ACM Conf. on Object-Oriented Systems, Languages, and Applications, Portland, Oregon, September 1986.

  12. Snyder, A.: Encapsulation and Inheritance in Object-Oriented Programming Languages,Proc. ACM Conf. on Object-Oriented Systems, Languages, and Applications, Portland, Oregon, September 1986.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Lin, H., Pong, MC. Modelling multiple inheritance with colimits. Formal Aspects of Computing 2, 301–311 (1990). https://doi.org/10.1007/BF01888231

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01888231

Key words

Navigation