Ann: Stackless Limbo Dancing Works Fine!

Fernando Pereira pereira at cis.upenn.edu
Fri May 24 10:55:58 EDT 2002


On 5/23/02 11:31 PM, in article uerd0l9d54dac9 at corp.supernews.com, "Andrew
Henshaw" <andrew.henshaw at mail.com> wrote:

> Fernando Pereira wrote:
>> I can't find my CSP book, but from memory I don't think this is correct.
>> Through || (PAR), it is possible for several concurrent processes to
>> attempt to read or to write on the same channel. Then the channel
>> implementation needs a queue to hold all the blocked processes until a
>> complementary event occurs, at which point one of the pending requests is
>> matched to the event and the blocked process becomes runable.
> 
> I believe that my statement was correct.  From a 1985 version of
> Communicating Sequential Processes (p. 134):
> 
> "We shall observe the convention that channels are used for communication
> in only one direction and between only two processes.  A channel which is
> used only for output by a process will be called an output channel of that
> process; and one used only for input will be called an input channel.  In
> both cases, we shall say loosely that the channel name is a member of the
> alphabet of the process."

As I said, I can't find my copy of the book. But this restriction is a
*convention* only. The language syntax does not impose that restriction, nor
does the semantics AFAIK.

-- F




More information about the Python-list mailing list