Date Added: Jul 2012
More and more the notion of agent appears in different contexts of computer science, often with different meanings. Main ones are Artificial Intelligence (AI) and Distributed AI, where agents are exploited as a technique to develop systems exhibiting some kind of intelligent behavior. In this paper, the authors introduce a further perspective, shifting the focus from AI to computer programming and programming languages. In particular, the authors consider agents and related concepts as general purpose abstractions useful for programming software systems in general, conceptually extending object-oriented programming with features that - they argue - are effective to tackle some main challenges of modern software development.