Boost logo

Boost :

From: Marc Girod (girod_at_[hidden])
Date: 2000-08-24 00:27:02


>>>>> "GC" == Greg Colvin <greg_at_[hidden]> writes:

GC> By the way, I am currently looking at an interesting alternative
GC> to the "monitor" approach being worked on for Java
GC> http://www.cs.ukc.ac.uk/projects/ofa/jcsp/
GC> This amounts to a Java library modelled on the Occam programming
GC> language, which itself is modeled on Hoare's Communicating
GC> Sequential Processes.

I am quite sure you know it well, but it is something I have had in
mind for long (it is more than 10 years I stopped programing in
Occam2...).

In Occam, there is no shared memory. "Process" is a language concept,
and can be used hierarchically. There is always one and only one
process which owns every piece of data, and the binding is static
(guaranteed by the compiler), so that it needs not be enforced
dynamically (no locks).

If a process is interested in another process data, they have to
communicate through a channel. The synchronisation happens through the
communication.

My idea to use these concepts in a statically typed OO language, was
to have "Operation" classes (i.e. the processes), which would be
chained by knowing their "Initiator". Both would have been templates,
to ensure strong typing of the "processes".

-- 
Marc Girod        P.O. Box 320        Voice:  +358-9-511 23746
Nokia Networks    00045 NOKIA Group   Mobile: +358-40-569 7954
Hiomo 5/1         Finland             Fax:    +358-9-511 23580

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk