Results 1  10
of
72
Pict: A programming language based on the picalculus
 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 highlevel constructs including data structures, higherorder functional programming, concurrent control structures, and objects. Moreover ..."
Abstract

Cited by 254 (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 highlevel constructs including data structures, higherorder 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 highlevel language using the πcalculus as its core. This paper describes Pict, a stronglytyped concurrent programming language constructed in terms of an explicitlytypedcalculus core language.
On Asynchrony in NamePassing Calculi
 In
, 1998
"... The asynchronous picalculus is considered the basis of experimental programming languages (or proposal of programming languages) like Pict, Join, and Blue calculus. However, at a closer inspection, these languages are based on an even simpler calculus, called Local (L), where: (a) only the output c ..."
Abstract

Cited by 88 (14 self)
 Add to MetaCart
The asynchronous picalculus is considered the basis of experimental programming languages (or proposal of programming languages) like Pict, Join, and Blue calculus. However, at a closer inspection, these languages are based on an even simpler calculus, called Local (L), where: (a) only the output capability of names may be transmitted; (b) there is no matching or similar constructs for testing equality between names. We study the basic operational and algebraic theory of Lpi. We focus on bisimulationbased behavioural equivalences, precisely on barbed congruence. We prove two coinductive characterisations of barbed congruence in Lpi, and some basic algebraic laws. We then show applications of this theory, including: the derivability of delayed input; the correctness of an optimisation of the encoding of callbyname lambdacalculus; the validity of some laws for Join.
What is a `Good' Encoding of Guarded Choice?
 INFORMATION AND COMPUTATION
, 1997
"... The calculus with synchronous output and mixedguarded choices is strictly more expressive than the calculus with asynchronous output and no choice. As a corollary, Palamidessi recently proved that there is no fully compositional encoding from the former into the latter that preserves divergenc ..."
Abstract

Cited by 67 (2 self)
 Add to MetaCart
The calculus with synchronous output and mixedguarded choices is strictly more expressive than the calculus with asynchronous output and no choice. As a corollary, Palamidessi recently proved that there is no fully compositional encoding from the former into the latter that preserves divergencefreedom and symmetries. This paper shows
The Join Calculus: A Language for Distributed Mobile Programming
 In Proceedings of the Applied Semantics Summer School (APPSEM), Caminha
, 2000
"... In these notes, we give an overview of the join calculus, its semantics, and its equational theory. The join calculus is a language that models distributed and mobile programming. It is characterized by an explicit notion of locality, a strict adherence to local synchronization, and a direct emb ..."
Abstract

Cited by 56 (2 self)
 Add to MetaCart
In these notes, we give an overview of the join calculus, its semantics, and its equational theory. The join calculus is a language that models distributed and mobile programming. It is characterized by an explicit notion of locality, a strict adherence to local synchronization, and a direct embedding of the ML programming language. The join calculus is used as the basis for several distributed languages and implementations, such as JoCaml and functional nets.
Types for Access Control
, 2000
"... KLAIM is an experimental programming language that supports a programming paradigm where both processes and data can be moved across di#erent computing environments. This paper presents the mathematical foundations of the KLAIM type system; this system permits checking access rights violations of mo ..."
Abstract

Cited by 51 (20 self)
 Add to MetaCart
KLAIM is an experimental programming language that supports a programming paradigm where both processes and data can be moved across di#erent computing environments. This paper presents the mathematical foundations of the KLAIM type system; this system permits checking access rights violations of mobile agents. Types are used to describe the intentions (read, write, execute, :::) of processes relative to the di#erent localities with which they are willing to interact, or to which they want to migrate. Type checking then determines whether processes comply with the declared intentions, and whether they have been assigned the necessary rights to perform the intended operations at the speci#ed localities. The KLAIM type system encompasses both subtyping and recursively de#ned types. The former occurs naturally when considering hierarchies of access rights, while the latter is needed to model migration of recursive processes. c 2000 Elsevier Science B.V. All rights reserved.
An Asynchronous, Distributed Implementation of Mobile Ambients
, 2000
"... We present a first distributed implementation of the CardelliGordon's ambient calculus. We use Jocaml as an implementation language and we present a formal translation of Ambients in the distributed Join Calculus, the process calculus associated with Jocaml. We prove the correctness of the trans ..."
Abstract

Cited by 49 (6 self)
 Add to MetaCart
We present a first distributed implementation of the CardelliGordon's ambient calculus. We use Jocaml as an implementation language and we present a formal translation of Ambients in the distributed Join Calculus, the process calculus associated with Jocaml. We prove the correctness of the translation. The operational semantics of Ambients requires that complex migration steps be performed atomically. As a result, direct implementations rely on the serialization of migrations via a centralized control. In contrast, our implementation is fully asynchronous and allows concurrent reduction steps. It relies on a messagepassing protocol between an ambient and its parent. Only the actions involving an ambient migrating or being opened are blocked during a reduction step. The proof of correctness of this implementation is two staged. First, an extended ambient calculus with a refined semantics is introduced, and the two semantics are related using coupledsimulations. Then, a b...
Communication interference in mobile boxed ambients
 In FST & TCS
, 2002
"... communication primitives acting across ambient boundaries. Expressiveness is achieved at the price of communication interferences on message reception whose resolution requires synchronisation of activities at multiple, distributed locations. We study a variant of BA aimed at controlling communicati ..."
Abstract

Cited by 42 (7 self)
 Add to MetaCart
communication primitives acting across ambient boundaries. Expressiveness is achieved at the price of communication interferences on message reception whose resolution requires synchronisation of activities at multiple, distributed locations. We study a variant of BA aimed at controlling communication interferences as well as mobility ones. Our calculus draws inspiration from Safe Ambients (SA) (with passwords) and modifies the communication mechanism of BA. Expressiveness is maintained through a new form of cocapability that at the same time registers incoming agents with the receiver ambient and performs access control.
Operational congruences for reactive systems
, 2001
"... This document consists of a slightly revised and corrected version of a dissertation ..."
Abstract

Cited by 34 (4 self)
 Add to MetaCart
This document consists of a slightly revised and corrected version of a dissertation
On the Expressive Power of Polyadic Synchronisation in πCalculus
, 2003
"... We extend the πcalculus with polyadic synchronisation, a generalisation of the communication mechanism which allows channel names to be composite. We show that this operator embeds nicely in the theory of πcalculus, we suggest that it permits divergencefree encodings of distributed calculi, and w ..."
Abstract

Cited by 29 (9 self)
 Add to MetaCart
We extend the πcalculus with polyadic synchronisation, a generalisation of the communication mechanism which allows channel names to be composite. We show that this operator embeds nicely in the theory of πcalculus, we suggest that it permits divergencefree encodings of distributed calculi, and we show that a limited form of polyadic synchronisation can be encoded weakly in πcalculus. After showing that matching cannot be derived in πcalculus, we compare the expressivity of polyadic synchronisation, mixed choice and matching. In particular we show that the degree of synchronisation of a language increases its expressive power by means of a separation result in the style of Palamidessi's result for mixed choice.
Firstorder axioms for asynchrony
 In Proc. CONCUR
, 1997
"... Abstract. We study properties of asynchronous communication independently of any concrete concurrent process paradigm. We give a generalpurpose, mathematically rigorous definition of several notions of asynchrony in a natural setting where an agent is asynchronous if its input and/or output is filt ..."
Abstract

Cited by 23 (2 self)
 Add to MetaCart
Abstract. We study properties of asynchronous communication independently of any concrete concurrent process paradigm. We give a generalpurpose, mathematically rigorous definition of several notions of asynchrony in a natural setting where an agent is asynchronous if its input and/or output is filtered through a buffer or a queue, possibly with feedback. In a series of theorems, we give necessary and sufficient conditions for each of these notions in the form of simple firstorder or secondorder axioms. We illustrate the formalism by applying it to asynchronous CCS and the core join calculus.