Prototyping Concurrent Systems with Agents and Artifacts: Framework and Core Calculus
Alessandro Ricci, Mirko Viroli, Maurizio Cimadamore · Electronic Notes in Theoretical Computer Science · 2008
More and more aspects of concurrency and concurrent programming are becoming part of mainstream programming and software engineering, due to several factors such as the widespread availability of multi-core / parallel architectures and Internet-based systems. Besides the typical fine-grained support currently provided, however, we seek in this paper for an higher-level approach. We present simpA, a library-based extension of Java which provides programmers with agent and artifact abstractions on top of the basic OO layer, as a means to organise and structure concurrent applications. To pave the way towards identifying a true language extension for simpA, we define a core calculus of agents and artifacts, by suitably mixing techniques coming from object-orientation and concurrency theory.