| Haridi, S., Van Roy, P., Brand, P., and Schulte, C. 1998. \Programming Languages for Distributed Applications", New Generation Computing, Vol. 16, No. 3, May, pp.223-261. |
....have properties not enjoyed by other goals definable in concurrent logic languages. This motivated us to design a meta interpreter that does not use match 2. Distributed computing based on concurrent constraint programming is not a new idea. The Oz group has done a lot of work in this direction [10]. However, code mobility in Oz is based on bytecode technology, and Oz has added to CCP a number of new constructs including ports (for many to one communication) cells (value containers that allow destructive update) computation space (encapsulated store, somewhat a#ected by nested guards of ....
Haridi, S., Van Roy, P., Brand, P. and Schulte, C., Programming Languages for Distributed Applications. New Generation Computing, Vol. 16, No. 3 (1998), pp. 223-- 261.
....of the low level handling of transport layers etc. By defining the behavior of different data structures, the network is still there, but on a higher level. The key concepts are network awareness and network transparency . The idea behind the distribution model of DML comes from Mozart [HVS97, HVBS98, VHB 97] Java s design goals include distributed programming in heterogenous networks, so we can hope to find a simple way of implementing distribution in DML. Java Remote Method Invocation (RMI) provides the mechanism by which servers and clients may communicate and pass information back ....
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming Languages for Distributed Applications. New Generation Computing, 16(3):223--261, 1998.
....and logic styles. It provides a variety of primitives for distribution and fault tolerance. Also much work has gone into planning and providing semantics for fault prone systems [Van99] Essentially it is the use of exceptions that allows an OZ programmer to deal with faults[HVS97, HVBS98] Lazy error detection, by handlers, enables the management of synchronous exceptions. Eager error detection, by watchers, enables the management of asynchronous exceptions. Fault tolerance is provided throughout the RTS down to the level of distributed garbage collection. 2.3.3 Concurrent ....
S. Haridi, P. Van Roy, P. Brand, and C. Schulte. Programming languages for distributed applications. New Generation Computing, 16(3):223-261, 1998.
....we investigate di erent re nement based algorithms and test out the possibilities to integrate local search into ACS. All used search algorithms are encapsuled in their corresponding constraint objects. Encapsuled search is an important prerequisite for distributed constraint satisfaction [9]. In this paper we give a brief presentation of our implementation of chronological backtracking (CBT) As shown in Figure 1 CBT is implemented as a constraint (named Labeling) that de nes an order on all variables to be labeled. The CBT constraint de nes an agent for the rst variable that ....
Seif Haridi, Peter van Roy, Per Brand, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 16(3), 1998. Invited Paper.
....paradigm, ccp [4] provides convenient synchronization mechanisms for many distributed algorithms. tccp is de ned in [1] as a timed extension of ccp usable for reactive systems. We show how tccp can be compiled and interpreted in the distributed multi paradigm programming system Mozart Oz [2]. keywords timed concurrent constraints, discrete event simulation 1 1 Timed Concurrent Constraint Programming The concurrent constraint programming paradigm, ccp [4] provides natural synchronization mechanisms for expressing concurrent algorithms. In principle different constraint based ....
.... 0 ; 0 i hAkB; i hA 0 kB 0 ; 0 t 0 i R8 hA; i hA 0 ; 0 i hB; i = hBkA; i hBkA 0 ; 0 i hAkB; i hA 0 kB; 0 i R9 hA; t 9 x i hB; 0 i h9 xA; i h9 0 xB; t 9 x 0 i R10 hp(x) i hA; i (p(x) A) 2 D 2 Mozart Oz Mozart [2] is a multi paradigm language allowing multi threaded higher order programs to be directly executed in a distributed open system. The language contains many useful derived constructs which are translated into a core language. More detailed information is available in the documents found at the web ....
Haridi S., Van Roy P., Brand P., Schulte C. \Programming Languages for Distributed Applications." Invited paper in New Generation Computing, Vol. 16, No.3, pp 223-261, 1998. Ohmsa Ltd. and Springer Verlag., Tokyo.
....A practical approach to concurrency that is much simpler than the standard monitor based approach. A mixed declarative imperative approach to user interface design that is well suited for context sensitive interfaces [2] An efficient approach to network transparent distributed programming [3]. An advanced approach to constraint programming that is based on encapsulated search [5] All these examples clearly illustrate the gains to be had by using multiple models in one program. In addition to examples such as these, the book has an in depth discussion of the uses and limits of ....
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 16(3):223--261, May 1998.
.... is an extension of the WAM [1] Oz multiparadigm language [23] is used to create a distributed platform called Mozart [26] Oz uses a constraint store similar to a blackboard and supports the use of several paradigm styles [23, 19] Besides, Mozart has special support for mobility of objects [17] and distributed treatment of logic variables [18] Mozart distributed architecture is a network of workstations providing standard protocols such as TCP IP. The run time environment is composed by four software layers [26] Oz centralized engine (Oz virtual machine [22] language graph layer ....
Haridi, S. et al. Programming Languages for Distributed Applications. New Generating Computing, v.16, n.3, p.223-261, 1998.
....First the number of Java Scripting API calls has to be reduced, second more efficient finite domain solving techniques must be included. In programming languages constraints turned out to be quite expressive when it comes to communication and synchronization in distributed virtual worlds [5]. It will be interesting to investigate how this approach could be combined with the LivingWorlds proposal or similar multi user extensions. 7 Conclusions We have presented constraints as an extension of VRML and described our experimental implementation. We feel that constraints provide a ....
Seif Haridi, Peter van Roy, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 3(16), 1998.
....and Mozart. The TreadMarks [1] approach is based on a distributed shared memory computing model. PVM [4] is a message passing API for constructing distributed applications on standard Unix workstations. Comparisons of the TreadMarks and PVM environments was conducted by Lu et al. 16] Motzart [11] is a specialpurpose programming language that simplifies the task of constructing distributed parallel applications. Research on the use of standard networked workstations to create high performance distributed applications has resulted in several widely used commercial products. Four popular ....
S. Haridi, P. V. Roy, P. Brand, and C. Schulte. Programming Languages for Distributed Applications. New Generation Computing, 16(3), 1998.
....31 Appendix: AVAILABLE COMPETENCE (CVS) SWEDISH INTERNET RESEARCH AND INNOVATION SOCIETY Page: 3 (34) PLAN Rev: 1.1 SIRIS READING ASSISTANCE Abbreviations and acronyms are explained in section 11. External papers documents are referred by means of code surrounded by brackets (e.g. [17]) References are listed in section 12. 1 SUMMARY Driven by the needs for increased competence, industrial growth and the opportunities of becoming a leading nation in Internet related Research and new business , a group of representatives from Swedish industry propose a joining of existing ....
Seif Haridi, Peter Van Roy, Per Brand, Christian Schulte. "Programming Languages for Distributed Applications". Invited paper - New Generation Computing - to appear 1998.
....under the supervision of Prof. Hans Dieter Burkhard (Humboldt University Berlin, Germany) and Dr. Kurt Sundermeyer (DaimlerChrysler AG, Research Technology) and in cooperation with Dr. H. Van Dyke Parunak (Center of Electronic Commerce, ERIM, Michigan) and the partners in the MASCADA project [2]. References [1] H.V.D.Parunak. Go to the Ant : Engineering Principles from Natural Agent Systems. Annals of Operations Research, 75:69 101, 1997. 2] ESPRIT LTR Project 22728. Manufacturing Control Systems Capable of Managing Production Change and Disturbances An Application of Autonomous ....
....and in cooperation with Dr. H. Van Dyke Parunak (Center of Electronic Commerce, ERIM, Michigan) and the partners in the MASCADA project [2] References [1] H.V.D.Parunak. Go to the Ant : Engineering Principles from Natural Agent Systems. Annals of Operations Research, 75:69 101, 1997. [2] ESPRIT LTR Project 22728. Manufacturing Control Systems Capable of Managing Production Change and Disturbances An Application of Autonomous Cooperating Agents. Information available at http: www.mech.kuleuven.ac.be pma project mascada [3] Autonomous Agents at Rock Island Arsenal. ....
[Article contains additional citation context not shown here]
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. "Programming languages for distributed applications." New Generation Computing, 16(3):223261, May 1998.
....constraint programming paradigm, ccp [4] provides convenient synchronization mechanisms for many distributed algorithms. tccp is defined in [1] as a timed extension of ccp usable for reactive systems. We show how tccp can be embedded in the distributed multi paradigm programming system Mozart Oz [2] with a translation using the mechanisms for discrete event simulation provided in a forthcoming release. keywords timed concurrent constraints, discrete event simulation 1 1 Timed Concurrent Constraint Programming The concurrent constraint programming paradigm, ccp [4] provides natural ....
.... 0 i R8 hA; i Gamma hA 0 ; 0 i hB; i Gamma = hBkA; i Gamma hBkA 0 ; 0 i hAkB; i Gamma hA 0 kB; 0 i R9 hA; oe t 9 x i Gamma hB; oe 0 i h9 oe xA; i Gamma h9 oe 0 xB; t 9 x oe 0 i R10 hp(x) i Gamma hA; i (p(x) GammaA) 2 D 2 Mozart Oz Mozart [2] is a multi paradigm language allowing multi threaded higher order programs to be directly executed in a distributed open system. The language contains many useful derived constructs which are translated into a core language. More detailed information is available in the documents found at the web ....
Haridi S., Van Roy P., Brand P., Schulte C. "Programming Languages for Distributed Applications." Invited paper in New Generation Computing, Vol. 16, No.3, pp 223-261, 1998. Ohmsa Ltd. and Springer Verlag., Tokyo.
....In a general perspective the fundamental mechanisms we thereby implement can be the core of a framework for decision support systems for a large class of complex technical systems. The platform we use consists of SICStus Prolog for efficient constraint solvers and CPLEX for OR based solvers and Mozart Oz [Mozart] used for coordination of the solvers. 2 The Railway Scheduling Problem Railway scheduling is normally treated with various techniques from operations research [surveyrail] Recently real world scheduling and allocation problems have been successfully modeled and solved with ....
....perspective the fundamental mechanisms we thereby implement can be the core of a framework for decision support systems for a large class of complex technical systems. The platform we use consists of SICStus Prolog for efficient constraint solvers and CPLEX for OR based solvers and Mozart Oz [Mozart] used for coordination of the solvers. 2 The Railway Scheduling Problem Railway scheduling is normally treated with various techniques from operations research [surveyrail] Recently real world scheduling and allocation problems have been successfully modeled and solved with constraint ....
[Article contains additional citation context not shown here]
Haridi, S., Van Roy, P., Brand, P., Schulte, C. "Programming Languages for Distributed Applications". Invited paper in New Generation Computing, Vol. 16, No.3, pp 223-261, 1998. Ohmsa Ltd. and Springer Verlag., Tokyo.
No context found.
S. Haridi, P. Van Roy, P. Brand, and C. Schulte. Programming languages for distributed applications. New Generation Computing, 16(3):223--261, 1998.
....up a parallel search engine: E= New Search.parallel init(adventure:1#rsh galley:1#rsh norge:1#rsh) This sets up an engine on the three machines adventure, galley, and norge. The engine is implemented using computation spaces (see Section 7. 4) and Mozart s support for distributed computing (see [45]) A single process is created on each of these machines using the remote shell operation rsh (other operations are possible including secure shell ssh for secure communication and local shell sh for shared memory multiprocessors) The following command does parallel search on the problem ....
....method definitions. It allows a simple debugging model and it makes it easy to add exception handling to the language. The current Oz language, Oz 3, conservatively extends Oz 2 with support for firstclass module specifications, called functors [33] and for open, robust, distributed programming [45, 123, 44, 120, 107]. A functor specifies a module in terms of the other modules it needs. Distribution is transparent, i.e. the language semantics is unchanged independent of how the program is distributed. With respect to logic programming, the distributed extension has two properties: The top level space is ....
[Article contains additional citation context not shown here]
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 16(3):223--261, May 1998.
....everyday to conduct one transactions. understand the dynamics of how information cities would be created, form structures and compete to attract various user populations based on the preferences of the infohabitants. Simulation: In the second phase, we are using a simulation tool (Mozart [8] [24]) to investigate the dynamics of competing information cities, and user behavior. For the dynamics, we use a multi agent simulation environment, where agents mimic the behavior of humans. Agents are programmed with simple well defined rules. The agents execute these rules once the simulation ....
S. Haridi et. al., Programming Languages for Distributed Applications, New Generation Computing, 3: 223-261, Omsha Ltd. And Springer-Verlag, 1998.
....is concerned with developing a high level concurrent architecture underlying parallel search engines. The approach to independently consider distribution and architecture is a consequence of the fact that distribution is provided orthogonally in Oz. Haridi et al. discuss this design approach in [48]. 80 9.2 Distributed Oz The basic idea of Distributed Oz is to abstract away the network as much as possible. This means that all network operations are invoked implicitly by the system as an incidental result of using particular language operations. Distributed Oz has the same language ....
....The created Oz process can be given a functor for execution. Thus the functor gives access to the remotely spawned computations. Typically, a functor is used to set up the right active services and to get access to native resources. Further Reading An overview on the design of Distributed Oz is [48]. A tutorial account on distributed programming with Mozart is [150] The distributed semantics of logic variables is reported in [47] the distributed semantics of objects is discussed in [151] More information on functors, dynamic linking, and module managers in Mozart can be found in [37] ....
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 16(3):223--261, 1998.
....same centralized process. For example, it is possible to define a class C in one computation, pass C to an independent computation that has never before heard of C, let the independent computation define a class D inheriting from C, and pass D back to the original computation [Van Roy et al. 1999; Haridi et al. 1998]. Oz provides language security. That is, all references to language entities are created and passed explicitly. An application cannot forge references nor access references that have not been explicitly given to it. The underlying representation of language entities is inaccessible to the ....
....external to the shared store. References to resources can be passed around the network at will, but the resource can only be executed on its home site [Van Roy et al. 1999] This includes computational and memory resources, which can be made visible in the language, e.g. by means of virtual sites [Haridi et al. 1998]. The single assignment category can be seen as an optimization of the stateful category in which a variable is bound to only one value, instead of repeatedly to different values. That is, the distributed unification algorithm is more efficient than the mobile state protocol. However, it turns ....
[Article contains additional citation context not shown here]
Haridi, S., Van Roy, P., Brand, P., and Schulte, C. 1998. Programming languages for distributed applications. New Generation Computing 16, 3 (May), 223--261.
....that takes distribution and partial failures into account is of major interest for programmers. They only have to know how faults are reflected at the language level. Fault detection and report can be used as a foundation for programming fault tolerance [Gar99] Oz 3 is such a language [HF99, HVBS98] and is the base of the Mozart system [Moz99] a platform for general purpose distributed application development. Mozart combines efficient network transparent distribution with a failure model that allows programming faulttolerant behavior in Oz [VHB99, AV00] The subject of this paper is the ....
....the state pointer. As we said in the introduction, the state pointer is mobile, which means that it moves from site to site, so that pointer updates are always performed locally. 3. 1 Access structure and thread interface The distribution in the Mozart platform follows a general scheme [HVS97, HVBS98] Each site has a node called a proxy, and one special site has a node called the manager ; those nodes are called the access structure of the mutable pointer. Any other node accesses the pointer via its local proxy. The protocol manages the movements of the state pointer from proxy to proxy, and ....
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 16(3), May 1998. 12
....Science, S 164 28 Kista, Sweden 1 Introduction We define a lightweight mobile state protocol that has a well defined behavior for site and network failures. The protocol is part of the Mozart system, a platform for general purpose distributed application development based on the Oz 2 language [2, 4, 5, 1]. Mozart combines efficient networktransparent distribution with a failure model that allows programming fault tolerant behavior in Oz 2. The protocol is defined on top of a network model and provides a well defined language interface. We formally define network semantics with its failure models, ....
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 16(3), May 1998.
....The aim of this paper is to design a mobile state protocol that has a well defined behavior for site failures and network inactivities. The protocol is part of the Mozart system, a platform for general purpose distributed application development based on the Oz 2 language [AV99, Moz99, HF99, HVBS98] Mozart combines efficient network transparent distribution with a failure model that allows programming fault tolerant behavior in Oz. The Mozart platform consists of four levels of abstraction, as shown in Figure 1. The Oz language layer (OZL) defines the language entities and their ....
....cell, record, procedure and thread. Anything else in Oz can be defined in terms of these basic entities. For instance, objects are defined in that way. Distributed Oz refines the semantics of Oz by attaching every entity to a site, and allowing some communication between certain remote entities [HVBS98, HVS97] Moreover, site failures and network problems are taken into account in the definition of the semantics. So each entity has a distributed behavior and a fault behavior. The entity that we focus on in this document, is the cell . Basically, a cell is a shared mutable pointer, and it is ....
[Article contains additional citation context not shown here]
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 16(3), May 1998.
No context found.
Haridi, S., Van Roy, P., Brand, P., and Schulte, C. 1998. \Programming Languages for Distributed Applications", New Generation Computing, Vol. 16, No. 3, May, pp.223-261.
No context found.
HARIDI, S. et al. Programming Languages for Distributed Applications. New Generating Computing, v.16, n.3, p.223-261, 1998.
No context found.
Haridi, S., Van Roy, P., Brand, P., and Schulte, C. 1998. \Programming Languages for Distributed Applications", New Generation Computing, Vol. 16, No. 3, May, pp.223-261.
No context found.
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming Languages for Distributed Applications. New Generation Computing, 16(3):223--261, 1998.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC