Results 1 
8 of
8
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.
Imperative Objects and Mobile Processes
 MATH. STRUCT. COMPUT. SCI
, 1998
"... An interpretation of Abadi and Cardelli's firstorder Imperative Object Calculus into a typed picalculus is presented. The interpretation validates the subtyping relation and the typing judgements of the Object Calculus, and is computationally adequate. The proof of computational adequacy makes use ..."
Abstract

Cited by 41 (13 self)
 Add to MetaCart
An interpretation of Abadi and Cardelli's firstorder Imperative Object Calculus into a typed picalculus is presented. The interpretation validates the subtyping relation and the typing judgements of the Object Calculus, and is computationally adequate. The proof of computational adequacy makes use of (a picalculus version) of ready simulation, and of a factorisation of the interpretation into a functional part and a very simple imperative part. The interpretation can be used to compare and contrast the Imperative and the Functional Object Calculi, and to prove properties about them, within a unified framework.
Compilation and Equivalence of Imperative Objects
, 1998
"... We adopt the untyped imperative object calculus of Abadi and Cardelli as a minimal setting in which to study problems of compilation and program equivalence that arise when compiling objectoriented languages. We present both a bigstep and a smallstep substitutionbased operational semantics fo ..."
Abstract

Cited by 34 (4 self)
 Add to MetaCart
We adopt the untyped imperative object calculus of Abadi and Cardelli as a minimal setting in which to study problems of compilation and program equivalence that arise when compiling objectoriented languages. We present both a bigstep and a smallstep substitutionbased operational semantics for the calculus. Our rst two results are theorems asserting the equivalence of our substitutionbased semantics with a closurebased semantics like that given by Abadi and Cardelli. Our third result is a direct proof of the correctness of compilation to a stackbased abstract machine via a smallstep decompilation algorithm. Our fourth result is that contextual equivalence of objects coincides with a form of Mason and Talcott's CIU equivalence; the latter provides a tractable means of establishing operational equivalences. Finally, we prove correct an algorithm, used in our prototype compiler, for statically resolving method osets. This is the rst study of correctness of an objectoriented abstract machine, and of operational equivalence for the imperative object calculus.
A Distributed Object Calculus
 In FOOL
, 2000
"... this paper, these two strands of research are brought together, to provide a model for distributed objectbased languages. In doing so, two features of distributed programming become clear: ..."
Abstract

Cited by 9 (0 self)
 Add to MetaCart
this paper, these two strands of research are brought together, to provide a model for distributed objectbased languages. In doing so, two features of distributed programming become clear:
Mobile Objects (a project overview)
 IN PROCEEDINGS OF FBT '99
, 1999
"... Objects are called mobile if they migrate within a distributed system from one physical location to another. We investigate this concept by means of the programming language Obliq in which the programmer is granted explicit control over the location of objects. Our study comprises the formal defi ..."
Abstract

Cited by 4 (4 self)
 Add to MetaCart
Objects are called mobile if they migrate within a distributed system from one physical location to another. We investigate this concept by means of the programming language Obliq in which the programmer is granted explicit control over the location of objects. Our study comprises the formal definition of a suitable semantics, a notion of correctness, the exposition of counterexamples for the general case, and a rigorous correctness proof for a sufficiently general class of cases.
Mobile Objects as Mobile Processes
, 2001
"... this paper, we rewrite our modified semantics of jeblik in terms of the #calculus, and we use it to formally prove the correctness of object surrogation, the abstraction of object migration in jeblik. Key Words: #calculus, Objects, Migration 1. ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
this paper, we rewrite our modified semantics of jeblik in terms of the #calculus, and we use it to formally prove the correctness of object surrogation, the abstraction of object migration in jeblik. Key Words: #calculus, Objects, Migration 1.
Local piCalculus at Work: Mobile Objects as Mobile Processes
 Theoretical Computer Science: Exploring New Frontiers of Theoretical Informatics, International Conference IFIP TCS 2000
, 2001
"... Obliq is a lexicallyscoped, distributed, objectbased programming language. In Obliq, the migration of an object is proposed as creating a clone of the object at the target site, whereafter the original object is turned into an alias for the clone. Obliq has only an informal semantics, so there is ..."
Abstract
 Add to MetaCart
Obliq is a lexicallyscoped, distributed, objectbased programming language. In Obliq, the migration of an object is proposed as creating a clone of the object at the target site, whereafter the original object is turned into an alias for the clone. Obliq has only an informal semantics, so there is no proof that this style of migration is safe, i.e., transparent to object clients. In previous work, we introduced jeblik, an abstraction of Obliq, where, by lexical scoping, sites have been abstracted away. We used jeblik in order to exhibit how the semantics behind Obliq's implementation renders migration unsafe. We also suggested a modied semantics that we conjectured instead to be safe. In this paper, we rewrite our modied semantics of jeblik in terms of calculus, and we use it to formally prove the correctness of object surrogation, the abstraction of object migration in jeblik. 1 Introduction The work presented in this paper is in line with the research activity to use the...
The Deep Blue Calculus
, 1998
"... We develop a calculus which is a "direct" descendant of the blue calculus of Boudol [Bou97]. This calculus is both an extension of Abadi & Cardelli's ζcalculus [AC96] and the Milner's πcalculus [Mil93]. We give a simple type system that is a direct extension of any type fragment considered ..."
Abstract
 Add to MetaCart
We develop a calculus which is a "direct" descendant of the blue calculus of Boudol [Bou97]. This calculus is both an extension of Abadi & Cardelli's ζcalculus [AC96] and the Milner's πcalculus [Mil93]. We give a simple type system that is a direct extension of any type fragment considered in [AC96] encodable into the πcalculus. The type system enjoys Subject Reduction. We provide finally an adequate CPS transform from our calculus to the blue calculus. This transform shows that the latter can be seen as a "target language", while our calculus provide a very expressive and promising notation for higherorder objectoriented concurrent programming languages.