Skip to main content

An overview of mobile agent programming

  • Invited Paper
  • Conference paper
  • First Online:
Analysis and Verification of Multiple-Agent Languages (LOMAPS 1996)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1192))

Abstract

Mobile agents are code-containing objects that may be transmitted between communicating participants in a distributed system. Compared to systems that only allow the exchange of nonexecutable data, those incorporating mobile agents can achieve significant gains in performance and functionality.

Languages with first-class functions provide a good starting point for agent programming, as they make it easy to express the construction, transmission, receipt, and subsequent execution of agents. However, for developing real agent-based systems, a language implementation must handle architectural heterogeneity between communicating machines and provide sufficient performance for applications based on agents. In addition, agents need to be able to access resources on remote execution sites yet remain in a framework that provides sufficient security. In this paper we consider the uses of mobile agents and how a distributed functional language can be extended to support them. We review other agent languages and present several observations on how further work in this area may proceed.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Nathaniel S. Borenstein. Email with a mind of its own: The Safe-Tcl language for enabled mail. In Proceedings of the 1994 IFIP WG6.5 Conference on Upper Layer Protocols, Architectures, and Applications, Barcelona, May 1994. North-Holland.

    Google Scholar 

  2. Luca Cardelli. Obliq: A Language with Distributed Scope. DEC Systems Research Center, May 1994.

    Google Scholar 

  3. Joseph R. Falcone. A programmable interface language for heterogeneous distributed systems. ACM Transactions on Computer Systems, 5(4):330–351, November 1987.

    Google Scholar 

  4. Alessandro Giacalone, Prateek Mishra, and Sanjiva Prasad. Facile: A symmetric integration of concurrent and functional programming. International Journal of Parallel Programming, 18(2):121–160, April 1989.

    Google Scholar 

  5. James Gosling and Henry McGilton. The Java language environment. White paper, May 1995. Sun Microsystems, 2550 Garcia Avenue, Mountain View, CA 94043, USA. Available at http://Java.sun.com/.

    Google Scholar 

  6. James Gosling, David S. H. Rosenthal, and Michelle J. Arden. The NeWS Book: An Introduction to the Network/extensible Window System. Springer-Verlag, New York, 1989.

    Google Scholar 

  7. MPEG-4 Proposal Package Description (PPD) — Revision 3 (Tokyo Revision). International Organisation for Standardisation document ISO/IEC JTC1/SC29/WG11 N0998, July 1995. Produced by the working group on Coding of Moving Pictures and Associated Audio Information.

    Google Scholar 

  8. Frederick C. Knabe. Language Support for Mobile Agents. PhD thesis, School of Computer Science, Carnegie Mellon University, Pittsburgh, Pennsylvania 15213, December 1995. Technical report CMU-CS-95-223.

    Google Scholar 

  9. Scott McCartney and Jonathan Friedland. Computer sales hot as poorer nations try to string PC gap. The Wall Street Journal, 29 June 1995.

    Google Scholar 

  10. Martin Odersky and Philip Wadler. Evolving Java. Outline for the Pizza research project. More information can be found at http://wwwipd.ira.uka.de/∼espresso/Project/. February 1996.

    Google Scholar 

  11. Birger Olofsson. SOFTNET Programming Guide (Linköping Implementation). Department of Electrical Engineering, Linköping University, S-581 83 Linköping, Sweden, March 1985.

    Google Scholar 

  12. Jeff Rulifson. DEL. ARPANET Request For Comments 5, available at ftp://ds. internic.net/rfc/rfc5.txt, June 1969.

    Google Scholar 

  13. James W. Stamos and David K. Gifford. Remote evaluation. ACM Transactions on Programming Languages and Systems, 12(4):537–565, October 1990.

    Google Scholar 

  14. Bent Thomsen, Lone Leth, Sanjiva Prasad, Tsung-Min Kuo, André Kramer, Fritz Knabe, and Alessandro Giacalone. Facile Antigua Release programming guide. Technical Report ECRC-93-20, European Computer-Industry Research Centre, Arabellastr. 17, 81925 Munich, Germany, December 1993. Available at http://www.ecrc.de.

    Google Scholar 

  15. Jim Waldo, Geoff Wyant, Ann Wollrath, and Sam Kendall. A note on distributed computing. Technical Report SMLI TR-94-29, Sun Microsystems Laboratories, 2550 Garcia Avenue, Mountain View, California 94043, USA, November 1994.

    Google Scholar 

  16. Terri Watson. Effective wireless communication through application partitioning. In Proceedings of the Fifth Workshop on Hot Topics in Operating Systems (HotOS-V), May 1995.

    Google Scholar 

  17. James E. White. Telescript technology: Mobile agents. General Magic white paper, 2465 Latham Street, Mountain View, CA 94040, 1996. Available from http:// www.genmagic.com/.

    Google Scholar 

  18. Jens Zander and Robert Forchheimer. High-level packet communication. FORTH Dimensions, 6(5):32–33, 1984.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Mads Dam

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Knabe, F. (1997). An overview of mobile agent programming. In: Dam, M. (eds) Analysis and Verification of Multiple-Agent Languages. LOMAPS 1996. Lecture Notes in Computer Science, vol 1192. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-62503-8_5

Download citation

  • DOI: https://doi.org/10.1007/3-540-62503-8_5

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-62503-2

  • Online ISBN: 978-3-540-68052-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics