Jada - Coordination and Communication for Java Agents

In this chapter we are going to analyze mobile code issues in the perspective of object oriented systems in which thread migration is not supported. This means that both object's code and data can be transmitted from a place to another but not the current execution state (if any) associated to the object. This is the case with the Java language which is often used in the Word Wide Web for developing applets which are little applications downloaded on the fly and executed in the client machine. While this mechanism is quite useful for enhancing HTML documents with sound and animation, we think that this technology can give its best in the field of distributed-cooperative work, both in the perspective of Internet and Intranet connectivity. Java is indeed a concurrent, multithreaded language, but it offers little help for distributed programming. Thus, we introduce Jada, a coordination toolkit for Java where coordination among either concurrent threads or distributed Java objects is achieved via shared object spaces. By exchanging objects through tuple spaces, Java programs and applets can exchange data or synchronize their actions over a single host, a LAN, or even the Internet.

[1]  Robert Tolksdorf Laura: a coordination language for open distributed systems , 1993, [1993] Proceedings. The 13th International Conference on Distributed Computing Systems.

[2]  Nicholas Carriero,et al.  Coordination languages and their significance , 1992, CACM.

[3]  Marc Najork,et al.  Distributed Active Objects , 1996, Comput. Networks.

[4]  Fabio Vitali,et al.  PageSpace: An Architecture to Coordinate Distributed Applications on the Web , 1996, Comput. Networks.

[5]  Nicholas Carriero,et al.  Coordination languages and their significance , 1992, CACM.

[6]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[7]  GoslingJames Java intermediate bytecodes , 1995 .

[8]  Paolo Ciancarini,et al.  The ShaPE of ShaDe: a Coordination System , 1996 .

[9]  Nicholas Carriero,et al.  How to write parallel programs - a first course , 1990 .

[10]  Ron Ben-Natan,et al.  CORBA - a guide to common object request broker architecture , 1995, J. Ranade Workstation series.

[11]  Ken Arnold,et al.  The Java Programming Language , 1996 .

[12]  Robert Tolksdorf,et al.  Coordination in open distributed systems , 1995 .

[13]  James Gosling,et al.  Java Intermediate Bytecode , 1995, Intermediate Representations Workshop.

[14]  David Gelernter,et al.  Turingware: an integrated approach to collaborative computing , 1996 .

[15]  James Gosling,et al.  Java Intermediate Bytecode , 1995, Intermediate Representations Workshop.