Bettini, Lorenzo; De Nicola, Rocco; Pugliese, Rosario Klava: a Java package for distributed and mobile applications. (English) Zbl 1009.68933 Software. Practice & Experience 32, No. 14, 1365-1394 (2002). Summary: Highly distributed networks have now become a common infrastructure for wide-area distributed applications whose key design principle is network awareness, namely the ability to deal with dynamic changes of the network environment. Network-aware computing has called for new programming languages that exploit the mobility paradigm as a basic interaction mechanism. In this paper we present the architecture of KLAVA, an experimental Java package for distributed applications and code mobility. We describe how KLAVA permits code mobility by relying on Java and present a few distributed applications that exploit mobile code programmed in KLAVA. Cited in 7 Documents MSC: 68U99 Computing methodologies and applications 68N15 Theory of programming languages 68N01 General topics in the theory of software 68N19 Other programming paradigms (object-oriented, sequential, concurrent, automatic, etc.) Keywords:code mobility; distributed applications; network awareness; language and middleware implementation; tuple spaces; Java Software:LIME; Klava; Sumatra PDFBibTeX XMLCite \textit{L. Bettini} et al., Softw., Pract. Exper. 32, No. 14, 1365--1394 (2002; Zbl 1009.68933) Full Text: DOI References: [1] Thorn, ACM Computing Surveys 29 pp 213– (1997) [2] Designing distributed applications with mobile code paradigms. Proceedings of the 19th International Conference on Software Engineering (ICSE’97), (ed.). ACM Press, 1997; 22-33. [3] The Java Programming Language (3rd edn). Addison-Wesley: Reading, MA, 2000. [4] Mobile agents. Software Agents, (ed.). AAAI Press and MIT Press, 1996. [5] Sumatra: A language for resource-aware mobile programs. Mobile Object Systems?Towards the Programmable Internet (Lecture Notes in Computer Science, vol. 1222), (eds.). Springer, 1997; 111-130. [6] Programming and Deploying Java Mobile Agents with Aglets. Addison-Wesley: Reading, MA, 1998. [7] Mobile agents: Are they a good idea? Research Report 19887, IBM Research Division, 1994. [8] Mobile computation. Mobile Object Systems?Towards the Programmable Internet (Lecture Notes in Computer Science, vol. 1222), (eds.). Springer, 1997; 3-6. [9] Choosing a mobile agent messaging model. Proceedings of ISADS 2001. IEEE Press, 2001; 278-286. [10] Gelernter, ACM Transactions on Programming Languages and Systems 7 pp 80– (1985) [11] L{\({}^2\)}imbo: A tuple space based platform for adaptive mobile applications. International Conference on Open Distributed Processing/Distributed Platforms (ICODP/ICDP’97), Toronto, Canada. Chapman and Hall, 1997. [12] The ShaPE of ShaDE: A coordination system. Technical Report UBLCS 96-5, Dipartimento di Scienze dell’Informazione, Università di Bologna, Italy, 1996. [13] JavaSpaces Principles, Patterns and Practice. Addison-Wesley: Reading, MA, 1999. [14] Multiple tuple spaces in Linda. Proceedings of the Conference on Parallel Architectures and Languages Europe (PARLE 89) (Lecture Notes in Computer Science, vol. 365), (eds.). Springer, 1989; 20-27. [15] Scientific Computing Associate, New Haven, CT. Paradise: User’s Guide and Reference Manual. http://www.lindaspaces.com/products/paradise.html [2000]. [16] Carriero, Computer 28 pp 40– (1995) [17] A coordination model for agents based on secure spaces. Proceedings of the 3rd International Conference on Coordination Models and Languages (Lecture Notes in Computer Science, vol. 1594), (eds.). Springer, 1999; 4-20. [18] Bauhaus Linda. Object-Based Models and Languages for Concurrent Systems (Lecture Notes in Computer Science, vol. 924), (eds.). Springer, 1995; 66-76. [19] Melinda: Linda with multiple tuple spaces. Technical Report RR YALEU/DCS/R-766, Department of Computer Science, Yale University, New Haven, CT, 1990. [20] Ciancarini, ACM Transactions on Software Engineering and Methodology 9 pp 167– (2000) [21] De Nicola, IEEE Transactions on Software Engineering 24 pp 315– (1998) [22] Carriero, ACM Computing Surveys 21 pp 323– (1989) [23] Personal disconnected operations with mobile agents. Proceedings of the 3rd Workshop on Personal Wireless Communications, PWC’98, Tokyo, 1998. [24] Analyzing mobile code languages. Mobile Object Systems?Towards the Programmable Internet (Lecture Notes in Computer Science, vol. 1222), (eds.). Springer, 1997. [25] How to migrate agents. http://www.cs.ucsd.edu/?bsy [1998]. [26] A safe Tcl toolkit for electronic meeting places. Proceedings of the 1st USENIX Workshop of Electronic Commerce, Berkeley, CA. USENIX Association, 1995; 133-135. [27] The architecture of the Ara platform for mobile agents. Proceedings of the 1st International Workshop on Mobile Agents (MA’97) (Lecture Notes in Computer Science, vol. 1219), (eds.). Springer, 1997; 50-61. [28] What TACOMA taught us. Mobility, Mobile Agents and Process Migration?An Edited Collection, (eds.). Addison-Wesley: Reading, MA, 1998. [29] Mole?a Java based mobile agent system. Proceedings of the 2nd ECOOP Workshop on Mobile Object Systems, University of Linz, Austria. Springer, 1996. [30] Inside Java 2 Platform Security: Architecture, API Design, and Implementation. Addison-Wesley: Reading, MA, 1999. [31] Types as specifications of access policies. Secure Internet Programming: Security Issues for Distributed and Mobile Objects (Lecture Notes in Computer Science, vol. 1603), (eds.). Springer, 1999; 117-146. [32] De Nicola, Theoretical Computer Science 240 pp 215– (2000) [33] A middleware for secure distributed tuple spaces. http://music.dsi.unifi.it/papers.html [2002]. [34] Fault-tolerant telecommunication system patterns. Pattern Languages of Program Design 2, (eds.). Addison-Wesley: Reading, MA, 1996; 549-562. [35] Mobile ambients. Foundations of Software Science and Computation Structures (FoSSaCS’98) (Lecture Notes in Computer Science, vol. 1378). Springer, 1998; 140-155. [36] Reactive tuple spaces for mobile agent coordination Proceedings of the 2nd International Workshop on Mobile Agents (Lecture Notes in Computer Science, vol. 1477), (eds.). Springer, 1998; 237-248. [37] MOBILE_TQL: Interrogazione di database distribuiti XML con agenti mobili. Master’s Thesis, Dipartimento di Informatica, Università di Pisa, 2002. [38] TQL algebra and its implementation. Proceedings of the 2nd IFIP International Conference on Theoretical Computer Science, Montreal, Canada. Kluwer, 2002. [39] Vitek, Science of Computer Programming (2002) [40] Sun Microsystems. RMI, Remote Method Invocation. http://java.sun.com/products/jdk/rmi. [41] Optimizing analysis for first-class tuple-spaces. Advances in Languages and Compilers for Parallel Processing, (eds.). MIT Press, 1991. [42] Extension of strand with Linda-like operations. Implementation and performance study. Proceedings of the Workshop on Practical Implementations and Systems Experience in Logic Programming, Budapest, Hungary, Tick E (ed.). Department of Computer and Information Science, University of Oregon, 1993. [43] Dynamic optimizations in Linda systems. http://www.cs.wisc.edu/?kaxiras [1993]. [44] An efficient distributed tuple space implementation for networks of workstations. EuroPar 96 (Lecture Notes in Computer Science, vol. 1123), (eds.). Springer, 1996; 511-513. [45] Compiler analysis and optimization of Linda programs for distributed-memory systems. PhD Thesis, University of Delaware, 1998. [46] Proving the correctness of optimising destructive and non-destructive reads over tuple spaces. Proceedings of Coordination 2000, Cyprus (Lecture Notes in Computer Science, vol. 1906), (eds.). Springer, 2000; 66-80. [47] Concurrency and Mobility Group at Dipartimento di Sistemi e Informatica, Università di Firenze. KLAIM Web page. http://music.dsi.unifi.it. [48] Formalizing properties of mobile agent systems. Proceedings of Coordination Models and Languages (Lecture Notes in Computer Science, vol. 2315), (eds.). Springer, 2002; 72-87. · Zbl 1053.68503 [49] A modal logic for KLAIM. Proceedings of the 8th International Conference on Algebraic Methodology and Software Technology, AMAST 2000 (Lecture Notes in Computer Science, vol. 1816), (ed.). Springer, 2000; 339-354. [50] Interactive mobile agents in X-KLAIM. Proceedings 7th International IEEE Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), (eds.). IEEE Computer Society Press, 1998; 110-115. [51] Structured nets in KLAIM. Proceedings of ACM SAC 2000, Special Track on Coordination Models, Languages and Applications, vol. I, (eds.). ACM Press, 2000; 174-180. [52] Modelling node connectivity in dynamically evolving networks. Proceedings of CONCOORD, International Workshop on Concurrency and Coordination, Lipari Island, Italy (Electronic Notes in Theoretical Computer Science, vol. 54). Elsevier, 2001. [53] An infrastructure language for open nets. Proceedings of ACM SAC 2002, Special Track on Coordination Models, Languages and Applications. ACM Press, 2002; 373-377. [54] Jada?coordination and communication for Java agents. Mobile Object Systems?Towards the Programmable Internet (Lecture Notes in Computer Science, vol. 1222), (eds.). Springer, 1997; 213-228. [55] The Jini Specification. Addison-Wesley, 1999. [56] Ford, IBM Systems Journal 37 pp 454– (1998) [57] ?CODE: A lightweight and flexible mobile code toolkit. Proceedings of the 2nd International Workshop on Mobile Agents (Lecture Notes in Computer Science, vol. 1477), (eds.). Springer, 1998; 160-171. [58] LIME: Linda meets mobility. Proceedings of the 21st International Conference on Software Engineering (ICSE’99), (ed.). ACM Press, 1999; 368-377. [59] Pickling threads state in the Java system. Proceedings of the Technology of Object-Oriented Languages and Systems (TOOLS), St. Malo, France. IEEE Computer Society Press, 2000. [60] Network-aware mobile programs. Proceedings of the USENIX Annual Technical Conference. USENIX Association, 1997; 91-103. [61] Translating strong mobility into weak mobility. Proceedings of the 5th IEEE International Conference on Mobile Agents (MA 2001) (Lecture Notes in Computer Science, vol. 2240), (ed.). Springer, 2001; 182-197. · Zbl 1052.68816 This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.