%T Santa Claus \- with Mobile Reindeer and Elves
%A Peter H. Welch, Jan Bækgaard Pedersen
%E Peter H. Welch, S. Stepney, F.A.C Polack, Frederick R. M. Barnes, Alistair A. McEwan, G. S. Stiles, Jan F. Broenink, Adam T. Sampson
%B Communicating Process Architectures 2008
%X Mobile processes, along with mobile channels, enable
process
networks to be dynamic: they may change their size
(number of
processes, channels, barriers) and shape
(connection topology)
as they run much like living
organisms. One of the benefits is
that all connections do
not have to be established statically,
in advance of when
they are needed and open to abuse. In classical
occam, care
had to be taken by processes not to use channels when
they
were not in the right state to use them. With occam\-π
mobiles,
we can arrange that processes simply do not have
those channels until
they get into the right state –
and not having such channels
means that their misuse cannot
even be expressed! Of course, it is
a natural consequence of
mobile system design that the arrivals of
channels (or
barriers or processes) are the very events triggering
their
exploitation. In our explorations so far with occam\-π,
we
have taken advantage of the mobility of data, channels
and barriers
and seen very good results. Very little work
has been done with
mobile processes: the ability to send and
receive processes through
channels, plug them into local
networks, fire them up, stand them
down and move them on
again. This talk illustrates mobile process
design through a
solution to Trono\[rs]s classical Santa
Claus
Problem. The reindeer and elves are modeled as
mobile processes
that move through holiday resorts, stables,
work, waiting rooms,
Santa\[rs]s Grotto and back again. All
those destinations are also
processes – though static
ones. As the reindeer and elves
arrive at each stage, they
plug in and do business. We will show
the occam\-π
mechanisms supporting mobile processes, confess to
one
weakness and consider remedies. The occam\-π solution
did,
of course, run correctly the first time it passed the
stringent
safety checks of the compiler and is available as
open source
(http://www.santaclausproblem.net).