Previous: The CC++ Programming Language Up: Introduction
This document is divided into two basic parts. The first three chapters describe the single address space constructs in CC++ ( par, parfor, spawn, atomic, and sync). The last four chapters describe the multiple address space constructs (processor objects, global pointers, and data transfer functions).
Each chapter loosely follows this basic outline:
The source code of the examples located at the end of each chapter are at the same ftp site ( cs.caltech.edu and directory CC++/docs/tutorial) as this tutorial. The names of the files mentioned in the tutorial match with the names of the files in that directory.
In order to learn CC++, and in order to read this tutorial, a basic understanding of C is assumed. An understanding of the C++ concept of an object is also assumed. This tutorial uses C and simple C++ syntax. Many programs in CC++, particularly distributed computations, use more detailed C++ features. A good reference for these, and C++ in general, is The C++ Programming Language by Bjarne Stroustrup, available from Addison-Wesley.
This tutorial is not a complete definition of the CC++ language. The complete language definition can be found in the CC++/docs directory at the anonymous ftp site cs.caltech.edu, or as Caltech Technical Report CS-TR-92-02.
This tutorial covers some major restrictions in the current CC++ implementation. The complete set of restrictions is outlined in the release notes, also in the CC++/docs directory.
Direct comments, questions and suggestions about CC++ or this tutorial to cc++@cs.caltech.edu. Report errors in the implementation to cc++-bugs@cs.caltech.edu.