14 research outputs found

    A transition system semantics for the control-driven coordination language Manifold

    Get PDF
    AbstractCoordination languages are a new class of parallel programming languages which manage the interactions among concurrent programs. Basically, coordination is achieved either by manipulating data values shared among all active processes or by dynamically evolving the interconnections among the processes as a consequence of observations of their state changes. The latter, also called control-driven coordination, is supported by MANIFOLD. We present the formal semantics of a kernel of MANIFOLD, based on a two-level transition system model: the first level is used to specify the ideal behavior of each single component in a MANIFOLD system, whereas the second level captures their interactions. Although we apply our two-level model in this paper to define the semantics of a control-oriented coordination language, this approach is useful for the formal studies of other coordination models and languages as well

    Personal note: Working with Farhad Arbab 1990–2005

    Get PDF
    From 1990 to 2005 the author had the privilege and pleasure to work as a programmer in Farhad Arbab’s research group, initially on the development, implementation and applications of the Manifold coordination language

    A coordination language for mobile components

    Get PDF
    Abstract In this paper we present the sigmapi coordination language, a core language for specifying dynamic networks of components. The language is inspired by the Manifold coordination language and by the pi-calculus. The main concepts of the language are components, classes, objects and channels. A program in sigmapi consists of a number of components, where each component is a collection of classes separable from its original context and re-usable in any other context. An object is an instance of a class that executes in parallel with the other objects active in the system. The sigmapi language differs from other models of object-oriented systems mainly in its treatment of communication and mobility: communication is anonymous via synchronous or asynchronous channels, while mobility is obtained by moving channels in the virtual space of linked objects. Thus, a channel is a transferable capability of communication, and objects are mobile in the sense that their communication possibilities may change during a computation. The language sigmapi itself does not impose exogenous coordination, meaning that the coordination primitives affecting each object can be executed within the computation of the object itself. However, only simple restrictions on the class-definitions of a sigmapi program suffice to enforce a separation between computation and coordination. Interaction typically occurs anonymously and under the full control of the objects involved. This make it easier to deal with Internet application where security policies must be enforced in view of the possibilities of attacks

    A coordination language for mobile components

    Full text link

    CWI-evaluation - Progress Report 1993-1998

    Get PDF

    A Transition System Semantics for the Control-Driven Coordination Language MANIFOLD

    Get PDF
    Coordination languages are a new class of parallel programming languages which manage the interactions among concurrent programs. Basically, coordination is achieved either by manipulating data values shared among all active processes or by dynamically evolving the interconnections among the processes as a consequence of observations of their state changes. The latter, also called control-driven coordination, is supported by MANIFOLD. We present the formal semantics of a kernel of MANIFOLD, based on a two-level transition system model: the first level is used to specify the ideal behavior of each single component in a MANIFOLD system, whereas the second level captures their interactions. Although we apply our twolevel model in this paper to define the semantics of a control-oriented coordination language, this approach is useful for the formal studies of other coordination models and languages as well

    A transition system semantics for the control-driven coordination language MANIFOLD

    No full text
    Coordination languages are a new class of parallel programming languages which manage the interactions among concurrent programs. Basically, coordination is achieved either by manipulating data values shared among all active processes or by dynamically evolving the interconnections among the processes as a consequence of observations of their state changes. The latter, also called control-driven coordination, is supported by MANIFOLD. We present the formal semantics of a kernel of MANIFOLD, based on a two-level transition system model: the first level is used to specify the ideal behavior of each single component in a MANIFOLD system, whereas the second level captures their interactions. Although we apply our two-level model in this paper to define the semantics of a control-oriented coordination language, this approach is useful for the formal studies of other coordination models and languages as well
    corecore