ULM: A Core Programming Model for Global Computing

  • Gérard Boudol
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2986)


We propose a programming model to address the unreliable character of accessing resources in a global computing context, focusing on giving a precise semantics for a small, yet expressive core language. To design the language, we use ideas and programming constructs from the synchronous programming style, that allow us to deal with the suspensive character of some operations, and to program reactive behaviour. We also introduce constructs for programming mobile agents, that move together with their state, which consists of a control stack and a store. This makes the access to references also potentially suspensive.


Time Slot Mobile Agent Network Reference Evaluation Context Reactive Programming 
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.


  1. 1.
    Acharya, A., Ranganathan, M., Saltz, J.: Sumatra: a language for resourceaware mobile programs. In: [20], pp. 111–130 (1997)Google Scholar
  2. 2.
    Benveniste, A., Caspi, P., Edwards, S.A., Halbwachs, N., Le Guernic, P., de Simone, R.: The synchronous languages twelve years later. Proc. of the IEEE, Special Issue on the Modeling and Design of Embedded Software 91(1), 64–83 (2003)Google Scholar
  3. 3.
    Berry, G., Gonthier, G.: The ESTEREL synchronous programming language: design, semantics, implementation. Sci. of Comput. Programming 19, 87–152 (1992)zbMATHCrossRefGoogle Scholar
  4. 4.
    Boudol, G.: ULM, A core programming model for global computing, available from the author’s web page (2003)Google Scholar
  5. 5.
    Boussinot, F.: La Programmation Réactive – Application aux Systèmes Communicants, Masson, Coll. Technique et Scientifique des Télécommunications (1996)Google Scholar
  6. 6.
    Boussinot, F., de Simone, R.: The SL synchronous language. IEEE Trans. on Software Engineering 22(4), 256–266 (1996)CrossRefGoogle Scholar
  7. 7.
    Cardelli, L.: A language with distributed scope. Computing Systems 8(1), 27–59 (1995)Google Scholar
  8. 8.
    Cardelli, L.: Global computation. ACM SIGPLAN Notices 32(1), 66–68 (1997)CrossRefGoogle Scholar
  9. 9.
    Cardelli, L.: Wide area computation. In: Wiedermann, J., Van Emde Boas, P., Nielsen, M. (eds.) ICALP 1999. LNCS, vol. 1644, pp. 10–24. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  10. 10.
    Cardelli, L., Dawies, R.: Service combinators for web computing. IEEE Trans. on Software Engineering 25(3), 303–316 (1999)CrossRefGoogle Scholar
  11. 11.
    De Nicola, R., Ferrari, G., Pugliese, R.: KLAIM: a kernel langage for agents interaction and mobility. IEEE Trans. on Software Engineering 24(5), 315–330 (1998)CrossRefGoogle Scholar
  12. 12.
    Fournet, C., Le Fessant, F., Maranget, L., Schmitt, A.: JoCaml: a language for concurrent, distributed and mobile programming. In: Jeuring, J., Jones, S.L.P. (eds.) AFP 2002. LNCS, vol. 2638, pp. 129–158. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  13. 13.
    Fuggetta, A., Picco, G.P., Vigna, G.: Understanding code mobility. IEEE Trans. on Software Engineering 24(5), 342–361 (1998)CrossRefGoogle Scholar
  14. 14.
    Halbwachs, N.: Synchronous Programming of Reactive Systems. Kluwer, Dordrecht (1993)zbMATHGoogle Scholar
  15. 15.
    The IST-FET Global Computing Initiative (2001),
  16. 16.
    Picco, G.P., Murphy, A.L., Roman, G.-C.: LIME: Linda meets mobility. In: ACM Intern. Conf. on Software Engineering, pp. 368–377 (1999)Google Scholar
  17. 17.
    Sewell, P., Wojciechowski, P.: Nomadic Pict: language and infrastructure design for mobile agents. IEEE Concurrency 8(2), 42–52 (2000)CrossRefGoogle Scholar
  18. 18.
    Sun Microsystems, JavaSpaces Service Specification (2000),
  19. 19.
    Thorn, T.: Programming languages for mobile code. ACM Computing Surveys 29(3), 213–239 (1997)CrossRefGoogle Scholar
  20. 20.
    Tschudin, C.F., Vitek, J. (eds.): MOS 1996. LNCS, vol. 1222. Springer, Heidelberg (1997)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Gérard Boudol
    • 1
  1. 1.INRIA Sophia Antipolis 

Personalised recommendations