AbstractSince its birth the Internet has always been characterised by a twofold aspect of a distributed information repository, to store, publish, and retrieve program and data files, and an interaction medium, including a variety of communication services. An important current trend consists of merging the two aspects described above, and envision the Internet as a globally distributed computing platform where communication and computation can be freely intertwined. However, traditional distributed programming models fall short in this context, due to the peculiar characteristics of the Internet. On the one hand, Internet services are decentralised and unreliable. On the other hand, even more important, mobility, either of users, devices, or application components, is going to impact the Internet in the near future. Since Internet applications are intrinsically interactive and collaborative, the definition of an appropriate coordination model and its integration in forthcoming Internet programming languages are key issues to build applications including mobile entities. We sketch the main features that such a model should present. Then, we survey and discuss some coordination models for Internet programming languages, eventually outlining open issues and promising research directions.
Categories and Subject Descriptors: D.1.3 [Programming Techniques]: Concurrent Programming; D.2.1 [Software Engineering]: Requirements/Specifications; C.2.4 [Computer-Communication Networks]: Distributed Systems; F.1.2 [Computation by Abstract Devices]: Modes of Computation; I.2.1 [Artificial Intelligence]: Applications and Expert Systems
Additional Key Words and Phrases: coordination models, Internet agents, multi-agent systems, mobile agents
Selected references
- Paolo Ciancarini. Coordination models and languages as software integrators. ACM Computing Surveys, 28(2):300-302, June 1996.
- David Gelernter. Generative communication in linda. ACM Transactions on Programming Languages and Systems, 7(1):80-112, January 1985.
- Tommy Thorne. Programming languages for mobile code. ACM Computing Surveys, 29(3):213-239, September 1997.