ActorFoundry

From Wikipedia, the free encyclopedia
Jump to: navigation, search

ActorFoundry is a Java-based library for Actor programming. It enables writing actor programs in the usual Java syntax. It support safe (by-copy) as well as efficient (zero-copy) messaging, actor mobility, and message ordering using local synchronization constraints. The run-time provides location-independence and fairness in scheduling.

It is being actively developed and maintained by the Open Systems Laboratory at the University of Illinois.

History[edit]

ActorFoundry was originally designed and implemented by Mark Astley along with Thomas Clausen and James Waldby around 1998–2000. Mark Astley was a member of Open Systems Laboratory at that time. Actor Foundry (the original name had a space) can be accessed at its old page.[1] provides a comparison of Actor Foundry with SALSA.

In Fall 2008, the project has been revived at the Open Systems Laboratory. Some of the recent performance enhancements are discussed in [2]

Design[edit]

ActorFoundry is structured as a set of components which represent the semantic features of an Actor system such as scheduler, name service, discovery service. These components are defined in terms of interfaces. A pure Java implementation is provided for each such component. Thus, the foundry is modular in design as well as portable across all platforms supporting Java.

Performance[edit]

ActorFoundry internally performs CPS transform (using the bytecode post-processor included in Kilim) and employs an M:N architecture (mapping M actors to N native threads where M >> N) for a highly efficient implementation of Actor semantics. The performance of ActorFoundry for the thread-ring benchmark at The Computer Language Benchmarks Game is comparable to the other top performing languages.

References[edit]

  1. ^ Carlos Varela and Gul Agha (2001). "Programming Dynamically Reconfigurable Open Systems with SALSA". ACM SIGPLAN Notices. OOPSLA’2001 Intriguing Technology Track Proceedings 36. 
  2. ^ Rajesh Karmani and Amin Shali and Gul Agha (2009). "Actor frameworks for the JVM platform: A Comparative Analysis". in proceedings of the 7th International Conference on the Principles and Practice of Programming in Java. 

External links[edit]