The example of implementing a queue (using a serializer) is definitely
part of a meta-circular definition of actor behavior.  Serializers are
one of the critical mechanisms identified by Hewitt, et. al. long ago.
 I believe that maintaining multiple virtual configurations of actors
provides another important way to partition actor systems.

In either case, I don't see the problem in composing actors,
especially if they have limited interactions.  Since concurrency is
mediated by message delivery, and message handling generally
represents small finite amounts of computation, independent actor
behaviors are interleaved at a very fine granularity.  And they can't
interfere with each other because they don't have shared mutable
state.

Of course, when working with traditional threaded systems, the cost of
context switching encourages us to do a lot more work between context
switches.  I think the key to effective actor implementations is a
dramatically lower context switching cost, which I have achieved in my
prototype.

The big mental shift in working with actors is to think in terms of
concurrent, rather than sequential, composition.  When I start
describing the meta-circular definition of Humus, in terms of actors,
the inherent pervasive fine-grained concurrency will be more clearly
exposed.

_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to