Abstract
A code sharing technique for object-oriented concurrent programming is presented, in which the behavior of an object is defined in terms of primary, constraint, and transition methods. A primary method represents the primary task to be performed in response to an incoming message. A constraint method determines whether or not an arriving message is acceptable. A transition method establishes the next context of an object. These three sorts of methods are inherited separately, i.e., two methods in different sorts do not override each other. By this way of separation, synchronization codes can be effectively shared and reused. We present two application examples to show the effectiveness of our technique.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Mehmet Aksit, Jan Willem Dijkstra, and Anand Tripathi. Atomic delegations. Technical Report INF-89-10, Un. of Twente, Department of Computer Science, February 1989.
Gul Agha. Actors: A Model of Concurrent Computation in Distributed Systems. The MIT Press, 1987.
A. V. Aho, J. Hopcroft, and D. Ullman. The Design and Analysis of Computer Algorithms. Addison-Wesley, 1974.
Daniel G. Bobrow, Linda G. DeMichiel, Richard P. Gabriel, Sonya E. Keene, Gregor Kiczales, and David A. Moon. Common lisp object system specification, X3J13 document 88-002R. SIGPLAN Notices, 23, September 1988.
R. Bayer and M. Schkolnick. Concurrency of operations on B-tree. Acta Informatica, 9(1):1–21, 1977.
Scott Danforth and Chris Tomlinson. Type theories and object-oriented programming. ACM Computing Surveys, 20(1):29–72, March 1988.
Adele Goldberg and David Robson. Smalltalk-80 — The Language and its Implementation. Addison-Wesley, 1983.
C. A. R. Hoare. Communicating sequential processes. Communications of the ACM, 21(8):666–677, 1978.
Dennis G. Kafura and Keung Hae Lee. Inheritance in actor based concurrent object-oriented languages. In ECOOP'89: Proceedings of European Conference on Object-Oriented Programming, pages 131–145, 1989.
Wilf R. LaLonde. Designing families of data types using exemplars. ACM Transactions on Programming Languages and Systems, 11(2):212–248, April 1989.
Henry Lieberman. Using prototypical objects to implement shared behavior in object oriented systems. In Proceedings of ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, Portland OR, USA., pages 214–223, November 1986.
Robin Milner. A Calculus of Communicating Systems, volume 92 of Lecture Notes in Computer Science. Springer-Verlag, 1980.
Satoshi Matsuoka, Ken Wakita, and Akinori Yonezawa. Inheritance in concurrent object-oriented languages. In 7th Conference Proceedings of Japan Society for Software Science and Technology, pages 65–68, 1990.
J. H. Reppy. Synchronous operations as first-class values. In Proceedings of ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 250–259. ACM, 1988.
Guy L. Steele Jr., editor. Common Lisp — the Language. Digital Press, 1984.
Lynn Andrea Stein. Delegation is inheritance. In Proceedings of ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, Orlando FL, USA., pages 138–155, October 1987.
Symbolics Inc. Symbolics Common Lisp — Language Concepts, Symbolics Release 7.2 Document Set, February 1988.
Chris Tomlinson and Vineet Singh. Inheritance and synchronization with enabled-sets. In Proceedings of ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, New Orleans, USA, pages 103–112. ACM, October 1989.
David Ungar and Randall B. Smith. Self: The power of simplicity. In Proceedings of ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, Orlando FL, USA., pages 227–242, October 1987.
Akinori Yonezawa, editor. ABCL: An Object-Oriented Concurrent System — Theory, Language, Programming, Implementation and Application. The MIT Press, 1990.
Akinori Yonezawa, Etsuya Shibayama, Jean Pierre Briot, Yasuaki Honda, and Toshihiro Takada. An object-oriented concurrent information processing model ABCM/1 and its description language ABCL/1. Computer Software, 3(3):9–23, 1986. (Revised version in [Yon90]).
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Shibayama, E. (1991). Reuse of concurrent object descriptions. In: Yonezawa, A., Ito, T. (eds) Concurrency: Theory, Language, and Architecture. CONCURRENCY 1989. Lecture Notes in Computer Science, vol 491. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53932-8_47
Download citation
DOI: https://doi.org/10.1007/3-540-53932-8_47
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53932-2
Online ISBN: 978-3-540-46452-5
eBook Packages: Springer Book Archive