C*


C* is a data-parallel superset of ANSI C with synchronous semantics.

History

It was developed in 1987 as an alternative language to *Lisp and CM-Fortran for the Connection Machine CM-2 and above. The language C* adds to C a "domain" data type and a selection statement for parallel execution in domains.
For the CM-2 models the C* compiler translated the code into serial C, calling PARIS functions, and passed the resulting code to the front end computer's native compiler. The resulting executables were executed on the front end computer with PARIS calls being executed on the Connection Machine.
On the CM-5 and CM-5E parallel C* Code was executed in a SIMD style fashion on processing elements, whereas serial code was executed on the PM Node, with the PM acting as a "front end" if directly compared to a CM-2.
The latest version of C* as of 27 August 1993 is 6.x.
An unimplemented language dubbed "Parallel C" influenced the design of C*. Dataparallel-C was based on C*.

General

Category:Concurrent programming languages