Failure Handling in a Network-Transparent Distributed Programming Language

  • Raphaël Collet
  • Peter Van Roy
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4119)


This paper shows that asynchronous fault detection is a practical way to reflect partial failure in a network-transparent distributed programming language. In the network-transparency approach, a program can be distributed over many sites without changing its source code. The semantics of the program’s execution does not depend on how the program is distributed. We have experimented with various mechanisms for detecting and handling faults from within the language Oz. We present a new programming model that is based on asynchronous fault detection, is more consistent with the network-transparent nature of Oz, and improves the modularity of failure handling at the same time.


Virtual Machine Fault Model Fault State Fault Module Logic Variable 
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.
    Haridi, S., Van Roy, P., Brand, P., Schulte, C.: Programming languages for distributed applications. New Generation Computing 16(3), 223–261 (1998)CrossRefGoogle Scholar
  2. 2.
    Waldo, J., Wyant, G., Wollrath, A., Kendall, S.: A note on distributed computing. Technical Report SMLI TR-94-29, Sun Microsystems Laboratories, Mountain View, CA (1994)Google Scholar
  3. 3.
    Van Roy, P.: On the separation of concerns in distributed programming: Application to distribution structure and fault tolerance in Mozart. In: International Workshop on Parallel and Distributed Computing for Symbolic and Irregular Applications (PDSIA 1999), Sendai, Japan, pp. 149–166 (1999)Google Scholar
  4. 4.
    Mozart Consortium (DFKI, SICS, UCL, UdS): The Mozart programming system (Oz 3) (1999),
  5. 5.
    Grolaux, D., Glynn, K., Van Roy, P.: A fault tolerant abstraction for transparent distributed programming. In: Van Roy, P. (ed.) MOZ 2004. LNCS, vol. 3389, pp. 149–160. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  6. 6.
    Al-Metwally, M.: Design and Implementation of a Fault-Tolerant Transactional Object Store. PhD thesis, Al-Azhar University, Cairo, Egypt (2003)Google Scholar
  7. 7.
    Saraswat, V.A.: Concurrent Constraint Programming. MIT Press, Cambridge (1993)Google Scholar
  8. 8.
    Van Roy, P., Haridi, S.: Concepts, Techniques, and Models of Computer Programming. MIT Press, Cambridge (2004)Google Scholar
  9. 9.
    Smolka, G.: The Oz programming model. In: van Leeuwen, J. (ed.) Computer Science Today. LNCS, vol. 1000, pp. 324–343. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  10. 10.
    Haridi, S., Van Roy, P., Brand, P., Mehl, M., Scheidhauer, R., Smolka, G.: Efficient logic variables for distributed computing. ACM Transactions on Programming Languages and Systems 21(3), 569–626 (1999)CrossRefGoogle Scholar
  11. 11.
    Van Roy, P., Haridi, S., Brand, P., Smolka, G., Mehl, M., Scheidhauer, R.: Mobile objects in Distributed Oz. ACM Transactions on Programming Languages and Systems 19(5), 804–851 (1997)CrossRefGoogle Scholar
  12. 12.
    Van Roy, P., Haridi, S., Brand, P.: Distributed programming in Mozart – A tutorial introduction. Technical report. In: Mozart documentation (1999), Available at:
  13. 13.
    Klintskog, E., El Banna, Z., Brand, P.: A generic middleware for intra-language transparent distribution. Technical Report T2003:01, Swedish Institute of Computer Science (2003)Google Scholar
  14. 14.
    Klintskog, E., El Banna, Z., Brand, P., Haridi, S.: The DSS, a middleware library for efficient and transparent distribution of language entities. In: Proceedings of HICSS’37 (2004)Google Scholar
  15. 15.
    Armstrong, J., Williams, M., Wikström, C., Virding, R.: Concurrent Programming in Erlang. Prentice-Hall, Englewood Cliffs (1996)Google Scholar
  16. 16.
    Armstrong, J.: Making Reliable Distributed Systems in the Presence of Software Errors. PhD thesis, Royal Institute of Technology (KTH), Kista, Sweden (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Raphaël Collet
    • 1
  • Peter Van Roy
    • 1
  1. 1.Université catholique de LouvainLouvain-la-NeuveBelgium

Personalised recommendations