Title :
On the implementation of CC++
Author :
Li, Xining ; Huang, He
Author_Institution :
Dept. of Math. Sci., Lakehead Univ., Thunder Bay, Ont., Canada
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;
Conference_Titel :
Electrical and Computer Engineering, 1994. Conference Proceedings. 1994 Canadian Conference on
Conference_Location :
Halifax, NS
Print_ISBN :
0-7803-2416-1
DOI :
10.1109/CCECE.1994.405863