Concurency in C

Bob Larson BLARSON%ECLD at usc-ecl.ARPA
Mon Dec 31 17:59:50 AEST 1984


This message is just a few random thoughts on adding concurrency to C.
Note that I am not implementing a concurrent C, nor even working on a
C compiler.  I just think it is better to discuss thinks ahead of time,
rather than having situations like strings in Pascal, the Intel 2716
vs. the TI 2716, etc.  (DON'T MENTION BASIC, the Buggy Asinine Sick
Interpreted Crud.)

1)  Where order of expressing evaluation is not specified, concurrent
evaluation should be allowed.  (Without additional locking mechanisms,
in my opinion.)  This will break a few flaky programs, but should not
hurt a well written program.

2) {{ and }} bracket a set of concurrently executed statements, that
may be executed concurrently or sequentially in any order.  The compound
statement thus formed will be considered terminated only when all statements
inside it have been completed.

This does not break any program I know of, and allows both upward and 
downward compatibility.

Additional issues to be discussed:

Locking mechanisms, when, where, and how.

Checking and modifying status of concurrently executing sub-processes.

Does this help/hinder/upset anyone?  Is serious work on a concurrent C
already taking place?

Bob Larson <Blarson at Usc-Ecl.Arpa>

  ... !ucbvax!Blarson at Usc-Ecl      or whatever
-------



More information about the Comp.lang.c mailing list