Programming languages for distributed applications
1998 (English)In: New generation computing, ISSN 0288-3635, E-ISSN 1882-7055, Vol. 16, no 3, 223-261 p.Article in journal (Refereed) Published
Much progress has been made in distributed computing in the areas of distribution structure, open computing, fault tolerance, and security. Yet, writing distributed applications remains difficult because the programmer has to manage models of these areas explicitly. A major challenge is to integrate the four models into a coherent development platform. Such a platform should make it possible to cleanly separate an application's functionality from the other four concerns. Concurrent constraint programming, an evolution of concurrent logic programming, has both the expressiveness and the formal foundation needed to attempt this integration. As a first step, we have designed and built a platform that separates an application's functionality from its distribution structure. We have prototyped several collaborative tools with this platform, including a shared graphic editor whose design is presented in detail. The platform efficiently implements Distributed Oz, which extends the Oz language with constructs to express the distribution structure and with basic primitives for open computing, failure detection and handling, and resource control. Oz appears to the programmer as a concurrent object-oriented language with dataflow synchronization. Oz is based on a higher-order, state-aware, concurrent constraint computation model.
Place, publisher, year, edition, pages
1998. Vol. 16, no 3, 223-261 p.
network transparency, fault tolerance, mobile objects, distributed algorithms, Oz
Computer and Information Science
IdentifiersURN: urn:nbn:se:kth:diva-24871ISI: 000074486800001OAI: oai:DiVA.org:kth-24871DiVA: diva2:353685
QC 201009282010-09-282010-09-282010-09-28Bibliographically approved