[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Occam-Tau - the natural successor to Occam-Pi
I've had only a quick look - will jump in when digested what you sent and all
the follow-up emails!
Just three quick thoughts:
- occam-pi does enable "objects" to be communicated over channels in the
most efficient way (i.e. by reference, if staying in the same memory
space) and with complete safety against race hazards. Currently,
these objects have to be declared MOBILE and are contiguous chunks
of data (i.e. no links to other MOBILEs). We are proposing to remedy
this (see slides 111-113, then 102-105 from the "occam Obviously" slides
from CPA 2012: http://www.wotug.org/paperdb/show_proc.php?f=4&num=29).
- we have found mobile channel-ends to be crucially important for the
modelling of complex systems - see the CoSMoS project:
Without channel-end mobility, only pre-defined parallel networks can
be built. Complex systems demand the construction/growth of networks
as they run. Passive data mobility is not enough.
Whether process mobility (the sending of processes down channels, which
occam-pi supports) is necessary has still to be decided. Technically,
they are not - there is a duality between process mobility and channel
mobility (anything one can do, so can the other). But process mobility
may give better powers of expression sometimes.
- verification is essential, though mostly denied in commercial practice
as impractical (and, therefore, unnecessary). For concurrency models
other than those based on CSP, verification is hard indeed! For occam,
see our examples in the "Cancellable Servers - a Pattern for Curiosity"
slides from CPA 2012, based on proposals in the two "Self-Verifying"