Performance-oriented implementation strategies for a mobile agent language

  • Frederick Knabe
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1222)


The use of larger and more complex mobile agents in distributed applications has created a need for agent programming systems that deliver better performance. The implementation of Extended Facile, a mobile agent language, uses several strategies to boost performance. We review four main techniques: allowing agents to use different transmissible representations, optimistically transmitting machine code with agents, stripping agents of data and code that can be found at their recipients before transmitting them, and performing agent compilation lazily. Quantitative measurements show that these methods can boost absolute and relative performance.


Mobile Agent Compilation Time Optimistic Transmission Compilation Function Machine Code 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Andrew W. Appel. Compiling with Continuations. Cambridge University Press, 1992.Google Scholar
  2. 2.
    G. Attardi, A. Baldi, U. Boni, F. Carignani, G. Cozzi, A. Pelligrini, E. Durocher, I. Filotti, Wang Qing, M. Hunter, J. Marks, C. Richardson, and A. Watson. Techniques for dynamic software migration. In ESPRIT '88: Proceedings of the 5th Annual ESPRIT Conference, volume 1, pages 475–491, Brussels, November 1988.Google Scholar
  3. 3.
    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
  4. 4.
    P. J. Brown. Throw-away compiling. Software-Practice and Experience, 6(3):423–434, 1976.Google Scholar
  5. 5.
    Luca Cardelli. Obliq: A Language with Distributed Scope. DEC Systems Research Center, May 1994.Google Scholar
  6. 6.
    Craig Chambers and David Ungar. Making pure object-oriented languages practical. In Conferenceon Object-Oriented Programming Systems, Languages, and Applications (OOPSLA), pages 1–15, Phoenix, Arizona, 1991. ACM.Google Scholar
  7. 7.
    Stewart M. Clamen, Linda D. Leibengood, Scott M. Nettles, and Jeannette M. Wing. Reliable distributed computing with Avalon/Common Lisp. In International Conference on Computer Languages, pages 169–179. IEEE, March 1990.Google Scholar
  8. 8.
    Omniware: A universal substrate for mobile code. Colusa Software white paper, 1995. Available at Scholar
  9. 9.
    Antony Courtney. Phantom: An interpreted language for distributed programming. In USENIX Conference on Object-Oriented Technologies (COOTS), Monterey, CA, June 1995.Google Scholar
  10. 10.
    Giovanna Di Marzo, Murhimanya Muhugusa, Christian Tschudin, and Jürgen Harms. The messenger paradigm and its implication on distributed systems. In Workshop on Intelligent Computer Communication (ICC), 1995. Also available at Scholar
  11. 11.
    F. Brent Dubach, Robert M. Rutherford, and Charles M. Shub. Process-originated migration in a heterogeneous environment. In Seventeenth Annual ACM Computer Science Conference, pages 98–102, Louisville, KY, USA, February 1989.Google Scholar
  12. 12.
    Alessandro Giacalone, Prateek Mishra, and Sanjiva Prasad. Facile: A symmetric integration of concurrent and functional programming. Internationaljournal of Parallel Programming, 18(2): 121–160, April 1989.Google Scholar
  13. 13.
    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
  14. 14.
    J. Heering, P. Klint, and J. Rekers. Lazy and incremental program generation. ACM Transactions on Programming Languages and Systems, 16(3): 1010–1023, May 1994.Google Scholar
  15. 15.
    Dennis Heimbigner. The Tps reference manual Version 2.1a. Arcadia Technical Report CU-ARCADIA-104-95, Department of Computer Science, University of Colorado, Boulder, Colorado 80309, USA, March 1995.Google Scholar
  16. 16.
    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
  17. 17.
    Charles M. Shub. Native code process-originatedmigration in a heterogeneous environment. In 1990 ACM Eighteenth Annual Computer Science Conference Proceedings, pages 266–270, Washington, DC, USA, February 1990.Google Scholar
  18. 18.
    Bjarne Steensgaard and Eric Jul. Object and native code thread mobility among heterogeneous computers. In 15th ACM Symposium on Operating Systems Principles (SOSP), Copper Mountain Resort, Colorado, December 1995.Google Scholar
  19. 19.
    Marvin M. Theimer and Barry Hayes. Heterogeneous process migration by recompilation. In 11th International Conference on Distributed Computing Systems, pages 18–25, Arlington, TX, USA, May 1991. IEEE.Google Scholar
  20. 20.
    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 Scholar
  21. 21.
    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
  22. 22.
    James E. White. Telescript technology: The foundation for the electronic marketplace. General Magic white paper, 2465 Latham Street, Mountain View, CA 94040, 1994.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Frederick Knabe

There are no affiliations available

Personalised recommendations