Results 1 - 10
of
18
Pict: A programming language based on the pi-calculus
- PROOF, LANGUAGE AND INTERACTION: ESSAYS IN HONOUR OF ROBIN MILNER
, 1997
"... The π-calculus offers an attractive basis for concurrent programming. It is small, elegant, and well studied, and supports (via simple encodings) a wide range of high-level constructs including data structures, higher-order functional programming, concurrent control structures, and objects. Moreover ..."
Abstract
-
Cited by 238 (8 self)
- Add to MetaCart
The π-calculus offers an attractive basis for concurrent programming. It is small, elegant, and well studied, and supports (via simple encodings) a wide range of high-level constructs including data structures, higher-order functional programming, concurrent control structures, and objects. Moreover, familiar type systems for the -calculus have direct counterparts in the π-calculus, yielding strong, static typing for a high-level language using the π-calculus as its core. This paper describes Pict, a strongly-typed concurrent programming language constructed in terms of an explicitly-typed-calculus core language.
Temporal Concurrent Constraint Programming: Denotation, Logic and Applications
, 2002
"... The tcc model is a formalism for reactive concurrent constraint programming. We present a model of temporal concurrent constraint programming which adds to tcc the capability of modeling asynchronous and non-deterministic timed behavior. We call this tcc extension the ntcc calculus. We also give a d ..."
Abstract
-
Cited by 44 (18 self)
- Add to MetaCart
The tcc model is a formalism for reactive concurrent constraint programming. We present a model of temporal concurrent constraint programming which adds to tcc the capability of modeling asynchronous and non-deterministic timed behavior. We call this tcc extension the ntcc calculus. We also give a denotational semantics for the strongest-postcondition of ntcc processes and, based on this semantics, we develop a proof system for linear-temporal properties of these processes. The expressiveness of ntcc is illustrated by modeling cells, timed systems such as RCX controllers, multi-agent systems such as the Predator /Prey game, and musical applications such as generation of rhythms patterns and controlled improvisation. 1
Constraints for Free in Concurrent Computation
- IN PROCEEDINGS OF THE ASIAN COMPUTER SCIENCE CONFERENCE, LNCS 1023
, 1995
"... 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 constraint ..."
Abstract
-
Cited by 20 (6 self)
- Add to MetaCart
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.
Concurrent Constraint Programming Based on Functional Programming (Extended Abstract)
- Programming Languages and Systems, Lecture Notes in Computer Science
, 1998
"... Gert Smolka Programming Systems Lab DFKI and Universitat des Saarlandes Postfach 15 11 50, D-66041 Saarbrucken, Germany smolka@dfki.de, http://www.ps.uni-sb.de/~smolka/ To appear in Proceedings of the 1998 European Joint Conferences on Theory and Practice of Software (ETAPS), Lisbon, Portugal, ..."
Abstract
-
Cited by 17 (4 self)
- Add to MetaCart
Gert Smolka Programming Systems Lab DFKI and Universitat des Saarlandes Postfach 15 11 50, D-66041 Saarbrucken, Germany smolka@dfki.de, http://www.ps.uni-sb.de/~smolka/ To appear in Proceedings of the 1998 European Joint Conferences on Theory and Practice of Software (ETAPS), Lisbon, Portugal, LNCS, Springer-Verlag, Berlin, 1998.
On the Expressive Power of Concurrent Constraint Programming Languages
- IN PPDP 2002
, 2002
"... The tcc paradigm is a formalism for timed concurrent constraint programming. Several tcc languages di#ering in their way of expressing infinite behavior have been proposed in the literature. In this paper ..."
Abstract
-
Cited by 14 (14 self)
- Add to MetaCart
The tcc paradigm is a formalism for timed concurrent constraint programming. Several tcc languages di#ering in their way of expressing infinite behavior have been proposed in the literature. In this paper
Functional Computation as Concurrent Computation
, 1995
"... We investigate functional computation as a special form of concurrent computation. ..."
Abstract
-
Cited by 13 (3 self)
- Add to MetaCart
We investigate functional computation as a special form of concurrent computation.
Multiparadigm programming in Oz
- WORKSHOP ON THE FUTURE OF LOGIC PROGRAMMING, INTERNATIONAL LOGIC PROGRAMMING SYMPOSIUM (ILPS 95
, 1995
"... The foundation of Prolog's success is the high abstraction level of its declarative subset, namely first-order Horn clause logic with SLDNF resolution. What's missing from Prolog is that little attempt is made to give the same foundation to anything outside the declarative subset. We argue that mult ..."
Abstract
-
Cited by 11 (2 self)
- Add to MetaCart
The foundation of Prolog's success is the high abstraction level of its declarative subset, namely first-order Horn clause logic with SLDNF resolution. What's missing from Prolog is that little attempt is made to give the same foundation to anything outside the declarative subset. We argue that multiparadigmprogramming can remedy this lack. We give a foundation for multiparadigmprogramming and we show how it is realized in the Oz language and system. Oz naturally encompasses multiple styles of programming, including (constraint) logic, functional, and concurrent object-oriented programming, by providing a common underlying foundation for these styles through a simple formal model in the concurrent constraint paradigm. We illustrate the integrative programming model with paradigmatical code examples.
A Confluent Relational Calculus for Higher-Order Programming with Constraints
- Proc. 1st Int. Conference on Constraints in Computational Logics (CCL'94
, 1994
"... . We present the ae-calculus, a relational calculus parametrized with a logical constraint system. The ae-calculus provides for higherorder relational programming with first-order constraints, and subsumes higher-order functional programming as a special case. It captures important aspects of the co ..."
Abstract
-
Cited by 6 (4 self)
- Add to MetaCart
. We present the ae-calculus, a relational calculus parametrized with a logical constraint system. The ae-calculus provides for higherorder relational programming with first-order constraints, and subsumes higher-order functional programming as a special case. It captures important aspects of the concurrent constraint programming language Oz. We prove the uniform confluence of the ae-calculus. Uniform confluence implies that all maximal derivations issuing from a given expression have equal length. But even confluence of a nonfunctional calculus modelling computation with partial information is interesting on its own right. 1 Introduction We present the ae-calculus, a relational calculus parametrized by a logical constraint system. The ae-calculus provides for higher-order relational programming with first-order constraints. The ae-calculus captures interesting aspects of the concurrent constraint programming language Oz [3]. It is a minimalistic subcalculus of the Oz-Calculus [12] wh...
A constraint-based recast of ML-polymorphism (Extended Abstract)
- 8TH INTERNATIONAL WORKSHOP ON UNIFICATION
, 1994
"... We implement the classical Damas-Milner type inference algorithm in a calculus with higher-order abstractions and 1st-order constraints. We encode mono(morphic) types as constraints, and poly(morphic) types as abstractions over monotypes. Our calculus ae deep is intended as computation model of a co ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
We implement the classical Damas-Milner type inference algorithm in a calculus with higher-order abstractions and 1st-order constraints. We encode mono(morphic) types as constraints, and poly(morphic) types as abstractions over monotypes. Our calculus ae deep is intended as computation model of a concrete programming language, i.e., to be what the-calculus is for ML, or the fl-calculus [8] for Oz [2]. Unlike usual in programming language research, ae deep allows reduction below abstraction. This allows to simplify our encoding of polytypes before usage. In the envisaged programming language, the type inferencer can be run just as specified. We claim that deep reduction is one of the essential features for such a high-level implementation of type inference or abstract interpretation algorithms [4]. The algorithm can also be viewed as an extension of Wand's [9] towards let-polymorphism. Like Wand's, our algorithm is easily modified to supply other monomorphic type systems with ML style polymorphism.

