Nothing Special   »   [go: up one dir, main page]

skip to main content
article
Free access

Concurrent Object Oriented 'C' (cooC)

Published: 01 February 1993 Publication History

Abstract

Concurrent Object Oriented C (cooC) is a language based on the premise that an object not only provides an encapsulation boundary but should also form a process boundary; each object acts concurrently. Upon this basic model various control regimes can be applied to provide different execution and service policies. The cooC language model employs wait-when-necessary communication and affords shared resource protection (via exclusive method invocation). The cooC runtime provides for several execution paradigms for object and method invocation. Varying runtime parameters (number of threads and a mail queue size) allow for: sequential compatible evaluation; fine and coarse grain concurrency; and eager and lazy evaluation, cooC is an extension to C. The underlying syntax of cooC is the same as that of Objective-C; moreover, Objective-C objects are cooC objects which are to be evaluated with a sequential runtime and employ no special synchronisation. The CooC compiler converts cooC into C and also supports C++. Hence cooC is a superset of C, C++ and Objective-C. We present cooC's concurrency object model, runtime and support for various execution and service policies.

References

[1]
[1] G. R. Andrews and F. B. Schneider. Concepts and Notations for Concurrent Programming. ACM Computing Surverys, 1983.
[2]
[2] B. J. Cox. Object Oriented Programming - An Evolutionary Approach. Addison-Wesley, 1987.
[3]
[3] B. Meyer. Object Oriented Software Construction . Prentice Hall, 1988. Series in Computer Science.
[4]
[4] B. Stroustrup. The C++ Programming Language . Addison-Wesley, 1986.
[5]
[5] R. Trehan, N. Sawashima, and K. Maeda. Concurrent Object Oriented 'C' (COOC) Debugging Enviroment. In Workshop on Future Directions of Parallel Programming and Architecture, International Conference on Fifth Generation Computer System, 1992. ICOT-TM-1185.
[6]
[6] R. Trehan, N. Sawashima, and A. Morishita. CSCW Architecture and Shared Drawing Tool Example. In The Eighth Symposium on Human Interface, 1992.
[7]
[7] P. Wegner. Concepts and Paradigms of Object Oriented Programming. In Proceedings of OOPSLA , 1989. Keynote Talk.
[8]
[8] Y. Yasuhiko and M. Tokoro. Concurrent Programming in Concurrent Smalltalk. In A. Yonezawa and M. Tokoro, editors, Object Oriented Concurrent Programming. MIT Press, 1987.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 28, Issue 2
Feb. 1993
56 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/157352
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 February 1993
Published in SIGPLAN Volume 28, Issue 2

Check for updates

Author Tags

  1. computer supported cooperative work
  2. concurrency systems
  3. distributed programming
  4. object oriented programming
  5. open system

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)59
  • Downloads (Last 6 weeks)9
Reflects downloads up to 21 Nov 2024

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media