• DocumentCode
    3177114
  • Title

    On the implementation of CC++

  • Author

    Li, Xining ; Huang, He

  • Author_Institution
    Dept. of Math. Sci., Lakehead Univ., Thunder Bay, Ont., Canada
  • fYear
    1994
  • fDate
    25-28 Sep 1994
  • Firstpage
    763
  • Abstract
    This paper presents a proposal for introducing concurrency to a sequential object-oriented programming language-C++, and discusses its implementation. The proposed language is called CC++. It distinguishes two categories of objects: process objects and class objects. Process objects are coarse-grain concurrent entities. Each process object has its own sequential control thread and an optional public interface accessible by other process objects. A set of process objects is synchronized and coordinated by a Remote Function Call (RFC) mechanism. Indeterministic RFC´s are selected or sequenced by guarded function declarations. Important objectives of this design are simple syntax, clear semantics and strong expressive power. An experimental CC++ has been developed on a network of SUN workstations. This version consists of a preprocessor and a run-time system. The preprocessor translates a CC++ program into a C++ counterpart. The run-time system includes a process scheduler based on context-switch technique and an Inter-Process Communication (IPC) kernel
  • Keywords
    object-oriented languages; program processors; CC++ implementation; SUN workstations; class objects; coarse-grain concurrent entities; concurrency; context-switch technique; inter-process communication kernel; optional public interface; preprocessor; process objects; process scheduler; remote function call mechanism; run-time system; semantics; sequential object-oriented programming language; syntax; Object oriented languages; Program processors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Electrical and Computer Engineering, 1994. Conference Proceedings. 1994 Canadian Conference on
  • Conference_Location
    Halifax, NS
  • Print_ISBN
    0-7803-2416-1
  • Type

    conf

  • DOI
    10.1109/CCECE.1994.405863
  • Filename
    405863