Advertisement

Extensibility and reuse of object-oriented synchronization components

  • Laurent Thomas
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 605)

Abstract

Synchronization components in an object oriented framework are hard to express because of their conflicting and interfering aims with the reuse and extension concepts. After surveying the state of the art, we identify two problems: the synchronization problem deals with acceptance of an activity based solely on the current executing activities and those wishing to do so, and the behavior problem deals with the availability of methods based solely on the state of the object. The allowance for an activity to execute is then expressed by two separated denotations, each handled separately with respect to the extensibility and reusabilty mechanism, whatever it may be.

Keywords

Parallel programming paradigms Parallel language extensions object-oriented language concurrency synchronization inheritance reuse 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    P. America. Issues in the Design of a Parallel Object-Oriented Language. Formal Aspects of Computing, 1(3):366–411, 1989.CrossRefGoogle Scholar
  2. [2]
    P. America. A Parallel Object-Oriented Language with Inheritance and Subtyping. In Proceedings ECOOP/OOPSLA'90. Special Issue Sigplan Notices 25(10), pages 161–168, Ottawa, Canada, Octobre 1990.Google Scholar
  3. [3]
    P. America. Programmer's Guide for POOL2. POOL2/PTC Package. Philips Research Laboratories, Eindhoven, 1991.Google Scholar
  4. [4]
    J.P. Briot and A. Yonezawa. Inheritance and Synchronization in Concurrent Object-Oriented Programming. In Proceedings of the European Conference on Object Oriented Programming (ECOOP'87), special Issue of Bigre No. 54, pages 35–43, Paris, 1987.Google Scholar
  5. [5]
    R.H. Campbell and A.N. Habermann. The Specification of Process Synchronization by Path Expressions. In Operating Systems, pages 89–102. Springer-Verlag, Lecture Notes in Computer Science, Vol. 16, 1974.Google Scholar
  6. [6]
    L. Cardelli. Operations on Records. In M. Main, A. Melton, M. Mislove, and D. Schmidt, editors, Mathematical Foundations of Programming Semantics, pages 22–52. Springer-Verlag, Lecture Notes in Computer Science, Vol. 442, 1990.Google Scholar
  7. [7]
    S. Crespi Reghizzi, G. Galli de Paratesi, and S. Genolini. Definition of Reusable Concurrent Software Components. In Pierre America, editor, Proceedings of the European Conference on Object Oriented Programming (ECOOP'91), volume 512 of Lecture Notes in Computer Science, pages 148–166, Geneva, Switzerland, Juillet 1991. Springer-Verlag.Google Scholar
  8. [8]
    D. Decouchant, S. Krakowiak, M. Meysembourg, M. Riveill, and X. Rousset de Pina. A Synchronization for typed objects in a distributed system. In Proceedings of the ACM SIGPLAN Workshop on Object-Based Concurrent Programming. Special Issue of Sigplan Notices 24:(4), pages 105–107, San Diego, California, 1989.Google Scholar
  9. [9]
    J. E. Grass and R. H. Campbell. Mediators: A Synchronization Mechanism. In Proceedings of the 6th Conf. Distributed Computing Systems, IEEE, pages 468–477, 1986.Google Scholar
  10. [10]
    D.G. Kafura and K.H. Lee. Inheritance in Actor Based Concurrent Object-Oriented Languages. In Proceedings of the Third European Conference on Object Oriented Programming (ECOOP'89), pages 131–145, 1989.Google Scholar
  11. [11]
    S. Krakowiak, M. Meysembourg, H. Nguyen Van, M. Riveill, C. Roisin, and X. Rousset de Pina. Design and Implementation of an Object-Oriented, Strongly Typed Langage for Distributed Applications. Journal of Object-Oriented Programming, 3(3): 11–22, 1990.Google Scholar
  12. [12]
    H. Lieberman. Delegation and Inheritance: Two Mechanisms for Sharing Knowledge in Object-Oriented Systems. In Actes des 3èmes JLOO, Bigre+Globule No. 48, pages 79–89, Paris, 1986.Google Scholar
  13. [13]
    O.M. Nierstrasz and M. Papathomas. Viewing Objects as Patterns of Communicating Agents. In Proceedings ECOOP/OOPSLA'90. Special Issue Sigplan Notices 25(10), pages 38–43, Ottawa, Canada, Octobre 1990.Google Scholar
  14. [14]
    G.A. Pascoe. Encapsulators: A New Software Paradigm in Smalltalk-80. In Proceedings of the 1st ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA'86), pages 341–346, Portland, Oregon, 1986.Google Scholar
  15. [15]
    P. Robert and J-P. Verjus. Toward Autonomous Descriptions of Synchronization Modules. In B. Gilchrist, editor, Proc. IFIP Congress, pages 981–986, 1977.Google Scholar
  16. [16]
    Strom, Bacon, Goldberg, Lowry, Yellin, and Yemini. Hermes: A Language for Distributed Computing. Prentice-Hall, Englewood Cliffs, NJ. O-13-389537-8, 1991.Google Scholar
  17. [17]
    R.E. Strom and S. Yemini. Typestate: A Programming Language Concept for Enhancing Software reliability. IEEE Transactions on Software Engineering, 12(1):157–171, 1986.Google Scholar
  18. [18]
    C. Tomlinson, W. Kim, M. Scheevel, V. Singh, B. Will, and G. Agha. Rosette: An Object-Oriented Concurrent System Architecture. In Proceedings of the ACM SIGPLAN Workshop on Object-Based Concurrent Programming. Special Issue of Sigplan Notices 24:(4), pages 91–93, San Diego, California, 1989.Google Scholar
  19. [19]
    C. Tomlinson and V. Singh. Inheritance and Synchronization with Enabled-Sets. In Proceedings of the 4th ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA'89). New Orleans, LA. Special Issue of Sigplan Notices 24:(10), pages 103–112, New Orleans, Louisiana, 1989.Google Scholar
  20. [20]
    D. Ungar, C. Chambers, B-W. Chang, and U. Hoelzle. Lisp and symbolic computation: An international journal. Numéro Spécial: 4(3), 1991.Google Scholar
  21. [21]
    J. van den Bos and C. Laffra. PROCOL. A concurrent object-oriented language with protocols delegation and constraints. Acta Informatica, 28:511–538, 1991.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • Laurent Thomas
    • 1
  1. 1.Campus ScientifiqueCentre de Recherche en Informatique de Nancy (CRIN)Vandœuvre-lès-NancyFrance

Personalised recommendations