In wide area distributed systems it is now common for higher-order code to be transferred from one domain to another; the receiving host may initialise parameters and then execute the code in its local environment. In this paper we propose a fine-grained typing system for a higher-order p-calculus which can be used to control the effect of such migrating code on local environments. Processes may be assigned different types depending on their intended use. This is in contrast to most of the previous work on typing processes where all processes are typed by a unique constant type, indicating essentially that they are well-typed relative to a particular environment. Our process type takes a form of an interface limiting the resources to which it has access, and the types at which they may be used. Allowing resource names to appear both in process types and process terms, as interaction ports, complicates the typing system considerably. For the development of a coherent typing system, we use a kinding technique, similar to that used by the subtyping of the system F, and order-theoretic properties of our subtyping relation. Various examples of this paper illustrate the use of our fine-grained typing system for distributed systems. As a specific application we define a new typed behavioural equivalence for the higher-order p-calculus. The expressiveness of our types enables us to state and prove interesting identities between typed processes. 1.
|
886
|
A Calculus of Mobile Processes
– Milner, Parrow, et al.
- 1992
|
|
811
|
Proof-Carrying Code
– Necula
- 1997
|
|
303
|
Subtyping recursive types
– Amadio, Cardelli
- 1993
|
|
277
|
A calculus of mobile agents
– Fournet, Gonthier, et al.
- 1996
|
|
241
|
Region-Based Memory Management
– Tofte, Talpin
- 1997
|
|
240
|
Semantics of Programming Languages: Structures and Techniques. Foundations of Computing
– Gunter
- 1992
|
|
229
|
Expressing Mobility in Process Algebras: First-Order and Higher-Order Paradigms
– Sangiorgi
- 1992
|
|
184
|
Kaim: a kernel language for agents interaction and mobility
– Nicola, Ferrari, et al.
- 1998
|
|
183
|
Resource access control in systems of mobile agents
– Hennessy, Riely
|
|
179
|
The SLam calculus: programming with secrecy and integrity
– Heintze, Riecke
- 1998
|
|
153
|
Secure information flow in a multithreaded imperative language
– Smith, Volpano
- 1998
|
|
123
|
Dynamic typing in a statically typed language
– Abadi, Cardelli, et al.
- 1991
|
|
114
|
An extension of system F with subtyping
– Cardelli, Martini, et al.
- 1991
|
|
76
|
Language Support for Mobile Agents
– Knabe
- 1995
|
|
75
|
On asynchrony in name-passing calculi
– Merro, Sangiorgi
- 1443
|
|
72
|
Trust and partial typing in open systems of mobile agents
– Riely, Hennessy
- 1999
|
|
71
|
Typed Concurrent Objects
– Vasconcelos
- 1996
|
|
39
|
Types and subtypes for client-server interactions
– Gay, Hole
|
|
34
|
Subtyping and locality in distributed higher order processes (ex-tended abstract
– Yoshida, Hennessy
- 1999
|
|
26
|
Static analysis of communication for asynchronous concurrent programming languages
– Kobayashi, Nakade, et al.
- 1995
|
|
11
|
Typing and subtyping for mobile processes
– unknown authors
- 1993
|
|
8
|
Graph Types for Monadic Mobile
– Yoshida
- 1996
|
|
5
|
Operational and Algebraic Semantics for Facile: A
– Giacalone, Mistra, et al.
- 1990
|
|
5
|
Principal Typing Scheme for Polyadic p-Calculus
– Vasconcelos, Honda
- 1993
|
|
5
|
Distribution and Mobility with Lexical Scoping
– Vasconcelos, Lopes, et al.
- 1998
|
|
5
|
Observing Localities
– Kiehn, Hennessy, et al.
- 1991
|
|
4
|
Secrecy by Typing
– Abadi
- 1997
|
|
3
|
Translating Core Facile, ECRC Research Report
– Amadio
- 1994
|
|
3
|
A static type system for detecting potentially transmissible functions
– Kirli
- 1999
|
|
2
|
The receptive distributed p-calculus, FSTTCS'99, LNCS
– Amadio, Boudol, et al.
- 1999
|
|
2
|
The full version of this paper
– Yoshida, Hennessy
- 1999
|
|
2
|
A Theory of Types for the pi-calculus, pp.112, Typescript
– Honda
- 1998
|
|
2
|
Polyadic p-Calculus, Logic and Algebra of Specification
– Milner
- 1992
|
|
2
|
Syntactic control of interference revised
– O'Hearn, Power, et al.
- 1997
|
|
2
|
Effect systems with subtyping, PEPM'95
– Tang, Jouvelot
- 1995
|
|
1
|
ObjectSpace Voyager home
– Inc
|