implementing Dijkstra's guarded commands

Don Libes libes at cme-durer.ARPA
Sun Jul 17 04:38:22 AEST 1988


In article <8044 at alice.UUCP>, ark at alice.UUCP writes:
> Dijkstra's guarded commands don't really allow for parallel
> [ example deleted ]
> Where's the parallelism?

You can execute the guards in parallel, as long as they don't have
side-effects.  I noted this in the last paragraph of my posting, but I
guess you missed it.  I'll repeat it:

In article <515 at muffin.cme-durer.ARPA>, I wrote:
> parallel execution of guards containing functions with side-effects
> would be awful.  (Fortunately, I don't believe I have to worry about
> that particular problem.)

In fact, I have never seen anyone using guards WITH side-effects.  I
think it is commonly understood that one of the benefits of Dijkstra's
guarded commands is that the obvious nondeterminism makes it easy to
speed up on a parallel machine.

I have already received several elegant solutions to my question.  I
will post the best shortly.

Don Libes          cme-durer.arpa      ...!uunet!cme-durer!libes



More information about the Comp.lang.c mailing list