Concurrent / Distributed Context-Oriented Systems based on a Reflective Actor Model


This project started as a re-construction of the actor-based group-wide reflection, which allows each actor to have capabilities of reasoning about/acting upon the collective behavior of the group it belongs to. In the original work on GWR, the meta-level of an actor group consists of actors that represent the components of the interpreter for the group. However, to reason about the group is complicated because the construction relies on a particular (somewhat ad-hoc) meta-level structure.

To overcome the difficulty on reasoning, I proposed a novel construction method of GWR. The key idea is to apply a semantic-preserving parallel composition to actors that constitute the meta-level of an actor group. This enables us a uniform construction of various types of meta-level actors.

I applied the proposed method to implement concurrent context-oriented systems. To realize context-oriented programming in concurrent systems based on asynchronous communication such as the Actor model, we must take special care to control synchronizations among context changes and other computations. We adopt an instance of group-wide reflection to solve the synchronization problem regarding messages that cross two contexts.