## Constraints for Free in Concurrent Computation (1995)

Venue: | IN PROCEEDINGS OF THE ASIAN COMPUTER SCIENCE CONFERENCE, LNCS 1023 |

Citations: | 21 - 6 self |

### BibTeX

@INPROCEEDINGS{Niehren95constraintsfor,

author = {Joachim Niehren and Martin Müller},

title = {Constraints for Free in Concurrent Computation},

booktitle = {IN PROCEEDINGS OF THE ASIAN COMPUTER SCIENCE CONFERENCE, LNCS 1023},

year = {1995},

pages = {171--186},

publisher = {Springer-Verlag}

}

### Years of Citing Articles

### OpenURL

### Abstract

We investigate concurrency as unifying computational paradigm which integrates functional, constraint, and object-oriented programming. We propose the ae-calculus as a uniform foundation of concurrent computation and formally relate it to other models: The ae- calculus with equational constraints provides for logic variables and is bisimilar to the fl-calculus. The ae-calculus without constraints is a proper subset of the -calculus. We prove its Turing completeness by embedding the eager -calculus in continuation passing style. The ae-calculus over an arbitrary constraint system is an extension of the standard cc-model with procedural abstraction.

### Citations

1148 |
Actors: A Model of Concurrent Computation in Distributed Systems
- Agha
- 1986
(Show Context)
Citation Context ...igms. This observation underlies Milner's -calculus [14, 13], Saraswat's concurrent constraint (cc) model [21], and Smolka's fl-calculus [23]. It is also central to the actor model by Hewitt and Agha =-=[1]-=-. Concurrency is the key to the programming language Oz [24] which integrates functional [16], object-oriented [7] and constraint programming [9, 15]. In this paper we start to relate several computat... |

580 | Term Rewriting Systems
- Klop
- 1992
(Show Context)
Citation Context ... steps. We need some general notations about computational calculi such as fl, ae(x=y),s[13], or the eager -calculus, and lazy -calculus. Our notion of a calculus generalises abstract rewrite systems =-=[10]-=-: A calculus is a triple (P; j; !) where P is a set, j an equivalence relation and ! and a binary relation on P . We require a calculus to satisfy (j ffi ! ffi j) `!, where ffi stands for relational c... |

331 |
Functions as processes
- Milner
- 1992
(Show Context)
Citation Context ...xtension of the standard cc-model with procedural abstraction. 1 Introduction Concurrent computation allows the unification of many programmingparadigms. This observation underlies Milner's -calculus =-=[14, 13]-=-, Saraswat's concurrent constraint (cc) model [21], and Smolka's fl-calculus [23]. It is also central to the actor model by Hewitt and Agha [1]. Concurrency is the key to the programming language Oz [... |

280 |
The polyadic -calculus: a tutorial
- Milner
- 1991
(Show Context)
Citation Context ..." in ae, in contrast to previous extensions of fl with constraints [22, 23, 19, 25]. The ae-calculus over the trivial constraint system ae(;) is a proper subset of the asynchronous polyadic -calc=-=ulus [12, 3, 8]-=-. This result is immediate from the identification of procedural abstractions with replicated input agents. Once-only input agents are not available in ae(;). Surprisingly, ae(;) is still Turing compl... |

264 | The semantic foundations of concurrent constraint programming
- Saraswat, Rinard, et al.
- 1991
(Show Context)
Citation Context ...raction. 1 Introduction Concurrent computation allows the unification of many programmingparadigms. This observation underlies Milner's -calculus [14, 13], Saraswat's concurrent constraint (cc) model =-=[21]-=-, and Smolka's fl-calculus [23]. It is also central to the actor model by Hewitt and Agha [1]. Concurrency is the key to the programming language Oz [24] which integrates functional [16], object-orien... |

220 |
Call-by-name, call-by-value, and the *-calculus
- Plotkin
- 1975
(Show Context)
Citation Context ...system ae(;) is Turing complete. We prove this statement by embedding the eager -calculus such that termination and complexity are preserved. This embedding employs a continuation passing style (CPS) =-=[20]-=-. An even simpler embedding can be found in [17]. Both embeddings lift into , since ae(;) can be embedded into the asynchronous, polyadic -calculus [12, 3, 8]. It suffices to observe the close syntact... |

191 | The call-by-need lambda calculus
- Ariola, Felleisen, et al.
- 1995
(Show Context)
Citation Context ... may not involve a network transfer. Related Work: Most surprisingly, the lazy -calculus can be embedded into ae(;) with call-by-need complexity (see [17]). Alternatively, the call-by-need - calculus =-=[2]-=- could be directly embedded into ae(;). Both results are stronger than the analogous results fors[4], since both embeddings map into a uniformly 2 We owe the idea to personal communication with Gert S... |

76 | A Calculus of - Milner, Parrow, et al. - 1992 |

63 | A calculus for higher-order concurrent constraint programming with deep guards
- Smolka
- 1994
(Show Context)
Citation Context ...lculus with constraints. To obtain this result, we simplified the original ae-calculus [19]: Now, constraints actually "come for free" in ae, in contrast to previous extensions of fl with co=-=nstraints [22, 23, 19, 25]-=-. The ae-calculus over the trivial constraint system ae(;) is a proper subset of the asynchronous polyadic -calculus [12, 3, 8]. This result is immediate from the identification of procedural abstract... |

58 | Object-oriented concurrent constraint programming in Oz
- Henz, Smolka, et al.
- 1995
(Show Context)
Citation Context ...d Smolka's fl-calculus [23]. It is also central to the actor model by Hewitt and Agha [1]. Concurrency is the key to the programming language Oz [24] which integrates functional [16], object-oriented =-=[7]-=- and constraint programming [9, 15]. In this paper we start to relate several computational calculi. An overview is given in the picture below. We formulate the relations by comparison with the ae-cal... |

52 | AKL A Multiparadigm Programming Language
- Janson
- 1994
(Show Context)
Citation Context ... is also central to the actor model by Hewitt and Agha [1]. Concurrency is the key to the programming language Oz [24] which integrates functional [16], object-oriented [7] and constraint programming =-=[9, 15]-=-. In this paper we start to relate several computational calculi. An overview is given in the picture below. We formulate the relations by comparison with the ae-calculus [19], a concurrent calculus w... |

42 |
Asynchrony and the -calculus (note). Rapports de Recherche 1702, INRIA Soa-Antipolis
- Boudol
- 1992
(Show Context)
Citation Context ..." in ae, in contrast to previous extensions of fl with constraints [22, 23, 19, 25]. The ae-calculus over the trivial constraint system ae(;) is a proper subset of the asynchronous polyadic -calc=-=ulus [12, 3, 8]-=-. This result is immediate from the identification of procedural abstractions with replicated input agents. Once-only input agents are not available in ae(;). Surprisingly, ae(;) is still Turing compl... |

31 |
An Abstract Machine for Oz
- Mehl, Scheidhauer, et al.
- 1995
(Show Context)
Citation Context ...rmines an instance of the ae-calculus. The ae-calculus serves as a foundation of the concurrent constraint language Oz [24], is part of its language definition [25] and a basis for its implementation =-=[11]-=-.seagersneedsae(;) fl ae(x=y) cc ae We prove bisimilarity of the fl-calculus [23] and the calculus ae(x=y): The flcalculus has been designed to model concurrent objects, while ae(x=y) instanti? To app... |

30 |
The Definition of Kernel Oz
- Smolka
- 1995
(Show Context)
Citation Context ...sm via cells. Any constraint system determines an instance of the ae-calculus. The ae-calculus serves as a foundation of the concurrent constraint language Oz [24], is part of its language definition =-=[25]-=- and a basis for its implementation [11].seagersneedsae(;) fl ae(x=y) cc ae We prove bisimilarity of the fl-calculus [23] and the calculus ae(x=y): The flcalculus has been designed to model concurrent... |

27 | Compositional analysis for concurrent constraint programming
- FALASCHI, GABBRIELLI, et al.
- 1993
(Show Context)
Citation Context ...t presentations ofs[13, 3, 8] and fl [23]. The central novelty in the version presented here is the distinction of logical conjunction (s) on constraints from composition (). In the standard cc-model =-=[21, 5, 6]-=-, these distinctions hold implicitly due to a monolithic constraint store. In a compositional syntax, the separation of conjunction and composition is central since it yields simple normal forms. On r... |

22 |
A foundation for concurrent constraint programming
- Smolka
- 1994
(Show Context)
Citation Context ...ent computation allows the unification of many programmingparadigms. This observation underlies Milner's -calculus [14, 13], Saraswat's concurrent constraint (cc) model [21], and Smolka's fl-calculus =-=[23]-=-. It is also central to the actor model by Hewitt and Agha [1]. Concurrency is the key to the programming language Oz [24] which integrates functional [16], object-oriented [7] and constraint programm... |

14 | Constraint programming
- Muller, Popow, et al.
- 1994
(Show Context)
Citation Context ... is also central to the actor model by Hewitt and Agha [1]. Concurrency is the key to the programming language Oz [24] which integrates functional [16], object-oriented [7] and constraint programming =-=[9, 15]-=-. In this paper we start to relate several computational calculi. An overview is given in the picture below. We formulate the relations by comparison with the ae-calculus [19], a concurrent calculus w... |

13 | Functional computation as concurrent computation
- Niehren
- 1996
(Show Context)
Citation Context ...tatement by embedding the eager -calculus such that termination and complexity are preserved. This embedding employs a continuation passing style (CPS) [20]. An even simpler embedding can be found in =-=[17]-=-. Both embeddings lift into , since ae(;) can be embedded into the asynchronous, polyadic -calculus [12, 3, 8]. It suffices to observe the close syntactic similarity of both calculi: P; Q ::= P jQ j (... |

12 |
A process algebra of concurrent constraint programming
- Boer, Palamidessi
- 1992
(Show Context)
Citation Context ...t presentations ofs[13, 3, 8] and fl [23]. The central novelty in the version presented here is the distinction of logical conjunction (s) on constraints from composition (). In the standard cc-model =-=[21, 5, 6]-=-, these distinctions hold implicitly due to a monolithic constraint store. In a compositional syntax, the separation of conjunction and composition is central since it yields simple normal forms. On r... |

9 |
Funktionale Berechnung in einem uniformnebenl"aufigen Kalk"ul mit logischen Variablen
- NIEHREN
- 1994
(Show Context)
Citation Context ...nt (cc) model [21], and Smolka's fl-calculus [23]. It is also central to the actor model by Hewitt and Agha [1]. Concurrency is the key to the programming language Oz [24] which integrates functional =-=[16]-=-, object-oriented [7] and constraint programming [9, 15]. In this paper we start to relate several computational calculi. An overview is given in the picture below. We formulate the relations by compa... |

6 | A confluent relational calculus for higher-order programming with constraints
- Niehren, Smolka
- 1994
(Show Context)
Citation Context ...onstraint programming [9, 15]. In this paper we start to relate several computational calculi. An overview is given in the picture below. We formulate the relations by comparison with the ae-calculus =-=[19]-=-, a concurrent calculus with firstorder constraints, higher-order procedural abstraction, and indeterminism via cells. Any constraint system determines an instance of the ae-calculus. The ae-calculus ... |

5 |
An Oz primer. DFKI Oz documentation series
- Smolka
- 1995
(Show Context)
Citation Context ...f the conditional rules. Mixing names and constraints is important when constraints are used to model data structures holding higher-order data, in particular if they need to be compared for equality =-=[24]-=-. In this case, a closer integration of names and the constraint system is required. An elegant option is to extend the syntax by a declaration construct for names, and to axiomatically require all na... |

2 |
Process semantics of graph reduction
- Brook, Ostheimer
- 1995
(Show Context)
Citation Context ...dded into ae(;) with call-by-need complexity (see [17]). Alternatively, the call-by-need - calculus [2] could be directly embedded into ae(;). Both results are stronger than the analogous results fors=-=[4]-=-, since both embeddings map into a uniformly 2 We owe the idea to personal communication with Gert Smolka and Martin Odersky. 3 Indeterminism via cells cannot arise in ae(;) and is not needed for func... |

1 |
On Reduction-Based Semantics
- Honda, Yoshida
- 1993
(Show Context)
Citation Context ..." in ae, in contrast to previous extensions of fl with constraints [22, 23, 19, 25]. The ae-calculus over the trivial constraint system ae(;) is a proper subset of the asynchronous polyadic -calc=-=ulus [12, 3, 8]-=-. This result is immediate from the identification of procedural abstractions with replicated input agents. Once-only input agents are not available in ae(;). Surprisingly, ae(;) is still Turing compl... |