FEATHERWEIGHT AGENT LANGUAGE - A Core Calculus for Agents and Artifacts

Ferruccio Damiani, Paola Giannini, Alessandro Ricci, Mirko Viroli

Abstract

The widespread diffusion and availability of multicore architectures is going to make more and more aspects of concurrency and distribution to be part of mainstream programming and software engineering. The SIMPA framework is a recently proposed library-based extension of JAVA that introduces on top of the OO layer a new abstraction layer based on agent-oriented concepts. A SIMPA program is organized in terms of dynamic set of autonomous pro-active task-oriented entities – the agents – that cooperate by exploiting some artifacts, that represents resources and tools that are dynamically constructed, shared and co-used by agents. In this paper we promote the applicability of the agent and artifact metamodel in OO programming a step further. Namely, we propose a core calculus that integrates techniques coming from concurrency theory and from OO programming languages to provide a first basic formal framework for designing agent-oriented languages and studying properties of agent-oriented programs.

References

  1. Agha, G. (1986). Actors: a model of concurrent computation in distributed systems. MIT Press, Cambridge, MA, USA.
  2. Agha, G., Wegner, P., and Yonezawa, A., editors (1993). Research directions in concurrent object-oriented programming. MIT Press, Cambridge, MA, USA.
  3. Benton, N., Cardelli, L., and Fournet, C. (2004). Modern concurrency abstractions for c#. ACM Trans. Program. Lang. Syst., 26(5):769-804.
  4. Briot, J.-P., Guerraoui, R., and Lohr, K.-P. (1998). Concurrency and distribution in object-oriented programming. ACM Comput. Surv., 30(3):291-329.
  5. Damiani, F., Giachino, E., Giannini, P., and Drossopoulou, S. (2008). A type safe state abstraction for coordination in java-like languages. Acta Inf., 45(7-8):479- 536.
  6. Fournet, C. and Gonthier, G. (1996). The reflexive chemical abstract machine and the join calculus. In POPL'96, pages 372-385. ACM.
  7. Igarashi, A., Pierce, B., and Wadler, P. (2001). Featherweight Java: A minimal core calculus for Java and GJ. ACM TOPLAS, 23(3):396-450.
  8. Itzstein, G. S. and Kearney, D. (2001). Join Java: an alternative concurrency semantics for Java. Technical Report ACRC-01-001, Univ. of South Australia.
  9. Lavender, R. G. and Schmidt, D. C. (1996). Active object: an object behavioral pattern for concurrent programming. In Pattern languages of program design 2, pages 483-499. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.
  10. Omicini, A., Ricci, A., and Viroli, M. (2009). Artifacts in the A&A meta-model for multi-agent systems. Autonomous Agents and Multi-Agent Systems, 19. Special Issue on Foundations, Advanced Topics and Industrial Perspectives of Multi-Agent Systems.
  11. Philippsen, M. (2000). A Survey of Concurrent ObjectOriented Languages. Concurrency Computat.: Pract. Exper., 12(10):917-980.
  12. Ricci, A. and Viroli, M. (2007). SIMPA: An agent-oriented approach for prototyping concurrent applications on top of java. In PPPJ'07, pages 185-194. ACM.
  13. Ricci, A., Viroli, M., and Cimadamore, M. (2008). Prototyping concurrent systems with agents and artifacts: Framework and core calculus. Electron. Notes Theor. Comput. Sci., 194(4):111-132.
  14. Sutter, H. and Larus, J. (2005). Software and the concurrency revolution. ACM Queue: Tomorrow's Computing Today, 3(7):54-62.
  15. Yonezawa, A. and Tokoro, M., editors (1986). Objectoriented concurrent programming. MIT Press, Cambridge, MA, USA.
Download


Paper Citation


in Harvard Style

Damiani F., Giannini P., Ricci A. and Viroli M. (2009). FEATHERWEIGHT AGENT LANGUAGE - A Core Calculus for Agents and Artifacts . In Proceedings of the 4th International Conference on Software and Data Technologies - Volume 1: ICSOFT, ISBN 978-989-674-009-2, pages 218-225. DOI: 10.5220/0002257102180225


in Bibtex Style

@conference{icsoft09,
author={Ferruccio Damiani and Paola Giannini and Alessandro Ricci and Mirko Viroli},
title={FEATHERWEIGHT AGENT LANGUAGE - A Core Calculus for Agents and Artifacts},
booktitle={Proceedings of the 4th International Conference on Software and Data Technologies - Volume 1: ICSOFT,},
year={2009},
pages={218-225},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0002257102180225},
isbn={978-989-674-009-2},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 4th International Conference on Software and Data Technologies - Volume 1: ICSOFT,
TI - FEATHERWEIGHT AGENT LANGUAGE - A Core Calculus for Agents and Artifacts
SN - 978-989-674-009-2
AU - Damiani F.
AU - Giannini P.
AU - Ricci A.
AU - Viroli M.
PY - 2009
SP - 218
EP - 225
DO - 10.5220/0002257102180225