Congrats on sticking with your work Dale.  I'm impressed.

On Sun, May 9, 2010 at 6:38 PM, Dale Schumacher
<> wrote:
> I've been following with great interest the FoNC developments at VPRI.
>  I too am very interested in compact, simple and expressive
> representations of computer-based solutions.  My focus for the last
> three years has been on the Actor model of computation [1][2].  It
> seems to me that actors are closer to Alan Kay's original concept of
> "objects" than the implementation of objects realized in Smalltalk and
> its derivatives.  As Alan has said, the emphasis should be on the
> messages.  In a concurrent environment, the asynchronous messaging of
> actors is a much better primitive than the synchronous call-return
> messaging typical in today's "object-oriented" languages (including
> those based on COLA).  In order to explore these ideas, I've developed
> an actor-based environment for protoyping.  Within this environment
> I've implemented; a solution to the same-fringe problem, an
> implementation of Joe Armstrong's "Erlang Challenge", a fault-tree
> simulation, a dialect of FORTH, two dialects of Scheme, and a
> meta-circularly-defined actor language called Humus.
> Humus is a pure actor-based programming language that provides a
> foundation for software developers to build reliable concurrent
> computer systems.  It features a referentially transparent
> pure-functional core for defining values.  These values become the
> messages between (and specify the behavior of) dynamically configured
> actors.  Actor behaviors are composed of concurrent, rather than
> sequential, primitive operations.  Actor configurations may also be
> composed without affecting their operation.  This allows
> implementation of systems with high scalability and low latency in
> both multi-core and distributed execution environments.  The
> theoretical foundations of Humus have mathematically rigorous
> semantics [3].  Unlike Erlang or Scala, there are no blocking
> operations and all expressions are completely free of side-effects.
> Mutable state is entirely encapsulated within actors and may be
> affected only be sending asynchronous messages.
> Some of the implementation techniques used in both Humus and my
> actor-based environment (ABE) were inspired by COLA.  OMeta also
> provided insight into the design of numerous parsers for the various
> languages built in ABE.  I haven't implemented OMeta directly, but
> believe an implementation is possible. The biggest hurdle to that
> implementation is the specification of semantic actions.  If I use the
> host language (Humus) to specify the semantic actions, then I can't
> take advantage of all the useful OMeta "code" written for COLA.  It
> seems that I would have to implement COLA (Coke) as well.  I would
> love to find a way to connect my work with that of VPRI, to the extent
> that we have shared goals.
> [1] G. Agha.  Actors: A Model of Concurrent Computation in Distributed
> Systems.  MIT Press, Cambridge, Mass., 1986.
> [2] C. Hewitt.  Viewing Control Structures as Patterns of Passing
> Messages.  Journal of Artificial Intelligence, 8(3):323-364, 1977.
> [3] G. Agha, I. Mason, S. Smith, and C. Talcott.  A Foundation for
> Actor Computation.  Journal of Functional Programming, Vol. 7, No. 1,
> January 1997.
> _______________________________________________
> fonc mailing list

fonc mailing list

Reply via email to