Skip to main content

Lana: An Approach to Programming Autonomous Systems

  • Conference paper
  • First Online:
ECOOP 2002 — Object-Oriented Programming (ECOOP 2002)

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

Included in the following conference series:

Abstract

Networks today are dynamic (e.g. devices join and leave P2P communities or Bluetooth piconets) so programs need to be autonomous. This means that they must be able to continue working despite changes in the network. To provide autonomy, developers require a programming model where the communication primitives are non-blocking, where there is support for information lookup in a program’s current network and where network outages are considered natural rather than as errors. This paper presents Lana, a programming model based on Java, that includes concepts for communication, mobility, security and connection recovery in order to support autonomy.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Gnutella protocol. http://gnutella.wego.com/.

  2. Seti project. http://setiathome.ssl.berkeley.edu/.

  3. Gul A. Agha. Actors: A Model of Concurrent Computation in Distributed Systems. PhD thesis, University of Michigan, Computer and Communication Science, 1985. also MIT AI Laboratory Technical Report 844.

    Google Scholar 

  4. Ken Arnold and James Gosling. The Java Programming Language. The Java Series. Addison-Wesley, Reading, MA, second edition, 1998.

    Google Scholar 

  5. Ken Arnold, Ann Wollrath, Bryan O’Sullivan, Robert Scheifler, and Jim Waldo. The Jini Specification. Addison-Wesley, Reading, MA, USA, 1999.

    Google Scholar 

  6. Nick Benton, Luca Cardelli, and Cedric Fournet. Modern Concurrency Abstractions for C#, January 2002.

    Google Scholar 

  7. Ciaran Bryce, Manuel Oriol, and Jan Vitek. A Coordination Model for Agents Based on Secure Spaces. In P. Ciancarini and A. Wolf, editors, Proc. 3rd Int. Conf. on Coordination Models and Languages, volume 1594 of Lecture Notes in Computer Science, pages 4–20, Amsterdam, Netherland, April 1999. Springer-Verlag, Berlin.

    Google Scholar 

  8. Ciarán Bryce and Chrislain Razafimahefa. An Approach To Safe Object Sharing. In Proceedings of the 15th Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA-2000), volume 35, pages 367–381, October 2000.

    Google Scholar 

  9. Ciarán Bryce and Jan Vitek. The JavaSeal Mobile Agent Kernel. Autonomous Agents and Multi-Agent Systems, 4(1):359–384, January 2001.

    Google Scholar 

  10. Luca Cardelli and Andrew D. Gordon. Mobile Ambients. In Maurice Nivat, editor, Foundations of Software Science and Computational Structures, number 1378 in LNCE, pages 140–155. Springer-Verlag, 1998.

    Google Scholar 

  11. Frank Dabek, Frans Kaashoek, David Karger, Robert Morris, and Ion Stoica. Wide Area Cooperative Storage with CFS. In 18th Symposium on Operating Systems Principles, pages 116–128, October 2001.

    Google Scholar 

  12. Deborah Estrin, Ramesh Govindan, and John Heidemann. Embedding the Internet. Communications of the ACM, 43(5):39–41, May 2000.

    Google Scholar 

  13. Cédric Fournet. The Join-Calculus: a Calculus for Distributed Mobile Programming. Ph.D. thesis, Ecole Polytechnique, 1998.

    Google Scholar 

  14. Eric Freeman, Susanne Hupfer, and Ken Arnold. JavaSpaces Pinciples, Ptterns, and Pactice Addison-Wesley, Reading, MA, USA, 1999.

    Google Scholar 

  15. Etienne M. Gagnon and Laurie J. Hendren. SableCC:An Object-Oriented Compiler Framework. In Proceedings of the IEEE Tools Conference, pages 140–154, Berkley, USA, April 1998. USENIX Association.

    Google Scholar 

  16. David Gelernter. Generative Communication in Linda. ACM Transactions on Programming Languages and Systems, 7(1), January 1985.

    Google Scholar 

  17. G. Glass. VOYAGER: The New Face of Distributed Computing. OBJECT magazine, June 1997.

    Google Scholar 

  18. Li Gong. Java security: Present and Near Future: Coping with the rapidly evolving security issues of cross-platform computing. IEEE Micro, 17(3):14–19, May/June 1997.

    Google Scholar 

  19. Li Gong. JXTA: A Network Programming Environment. IEEE Internet Computing, 5(3):88–95, May 2001.

    Google Scholar 

  20. James Gosling and Henry McGilton. The Java language environment-A White Paper. Technical report, Sun Microsystems, October 1995.

    Google Scholar 

  21. Henry Eddon Guy Eddon. Inside Distributed Com. Microsoft Programming Series. Microsoft Press, 1998.

    Google Scholar 

  22. John Hogg, Doug Lea, Alan Wills, Dennis deChampeaux, and Richard Holt. The Geneva Convention on the Treatment of Object Aliasing. OOPS Messenger, 3(2):11–16, April 1992.

    Google Scholar 

  23. Napster Inc. http://www.napster.com/.

  24. D. Johansen, R. van Renesse, and F. B. Schneider. An Introduction to the TACOMA Distributed System. Technical Report 95-23, University of Tromso, June 1995.

    Google Scholar 

  25. Eric Jul, Henry Levy, and Norman Hutchinson. Fine-Grained Mobility in the Emerald System. In Readings in Object Oriented Databases, pages 317–328. ACM, 1990.

    Google Scholar 

  26. Dimitri Konstantas, Ciaran Bryce, Jean-Henry Morin, Christian Kobel, Apostolos Vontas, Panos Hatzaras, and Adamantios Koumpis. A framework for Building Agent-Based Industrial Applications. In Szpytko & Banaszak Zaremba, editor, Intelligent Manufacturing Systems 2001, Proceedings of the 6th Workshop, April 24–26 2001, Poznan, Poland. Elsevier Science Publishers B.V. (North-Holland), November 2001.

    Google Scholar 

  27. Danny B. Lange and Mitsuru Oshima. Programming and Deploying Java Mobile Agents with Aglets. Addison-Wesley, 1998.

    Google Scholar 

  28. The Legion. The Bouncy Castle Project. http://www.bouncycastle.org.

  29. Rob Pike, Dave Presotto, Ken Thompson, Howard Trickey, and Phil Winterbottom. The Use of Name Spaces in Plan 9. Operating System Review, 27(2):72–76, April 1993.

    Google Scholar 

  30. Merlin Stone. Pervasive or Invasive-Managing the Customer on the Move. Technical report, IBM Corporation, 2001.

    Google Scholar 

  31. Sun. Java Remote Method Invocation Specification, 1997. http://www.javasoft.com.

  32. Carlos Varela and Gul Agha. Programming Dynamically Reconfigurable Open Systems with SALSA. In Cindy Norris and Jr. James B. Fenwick, editors, Proceedings of the 2001 ACM Conference on Object Oriented Programming Systems, Languages and Applications (OOPSLA-01), volume 36, 12 of A CM SIGPLAN notices, pages 20–34, New York, October 14–18 2001. ACM Press.

    Google Scholar 

  33. Jan Vitek and Boris Bokowski. Confined Types. ACM SIGPLAN Notices, 34(10):82–96, October 1999.

    Google Scholar 

  34. Jan Vitek and Christian Tschudin. Mobile Objects Systems. Springer Verlag, Berlin, 1997.

    Google Scholar 

  35. T. Von Eicken, C.-C. Chang, G. Czajkowski, and C. Hawblitzel. J-Kernel: A Capability-Based Operating System for Java. Lecture Notes in Computer Science, 1603:369–394, 1999.

    Google Scholar 

  36. John Whaley. Joeq Virtual Machine. http://joeq.sourceforge.net, 2001.

  37. James Y. Wilson and Jason A. Krontz. Inside Bluetooth: Part I. Dr. Dobb’s Journal of Software Tools, 25(3):62, 64–66, 68, 70, March 2000.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bryce, C., Razafimahefa, C., Pawlak, M. (2002). Lana: An Approach to Programming Autonomous Systems. In: Magnusson, B. (eds) ECOOP 2002 — Object-Oriented Programming. ECOOP 2002. Lecture Notes in Computer Science, vol 2374. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47993-7_13

Download citation

  • DOI: https://doi.org/10.1007/3-540-47993-7_13

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43759-8

  • Online ISBN: 978-3-540-47993-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics