Dynamic typing in a statically typed language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Semantics of programming languages: structures and techniques
Semantics of programming languages: structures and techniques
ACM Transactions on Programming Languages and Systems (TOPLAS)
A calculus of mobile processes, I
Information and Computation
Combinatory representation of mobile processes
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An extension of system F with subtyping
Information and Computation - Special conference issue: international conference on theoretical aspects of computer software
PEPM '95 Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
On reduction-based process semantics
Selected papers of the thirteenth conference on Foundations of software technology and theoretical computer science
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Region-based memory management
Information and Computation
Behavioral equivalence in the polymorphic pi-calculus
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Secure information flow in a multi-threaded imperative language
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The SLam calculus: programming with secrecy and integrity
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
KLAIM: A Kernel Language for Agents Interaction and Mobility
IEEE Transactions on Software Engineering
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Trust and partial typing in open systems of mobile agents
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Syntactic control of interference revisited
Theoretical Computer Science - Special issue on mathematical foundations of programming semantics
Secure Information Flow as Typed Process Behaviour
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
Secrecy by Typing inSecurity Protocols
TACS '97 Proceedings of the Third International Symposium on Theoretical Aspects of Computer Software
ECOOP '94 Proceedings of the 8th European Conference on Object-Oriented Programming
Suptyping and Locality in Distributed Higher Order Processes (extended abstract)
CONCUR '99 Proceedings of the 10th International Conference on Concurrency Theory
Principal Typing Schemes in a Polyadic pi-Calculus
CONCUR '93 Proceedings of the 4th International Conference on Concurrency Theory
CONCUR '96 Proceedings of the 7th International Conference on Concurrency Theory
Graph Types for Monadic Mobile Processes
Proceedings of the 16th Conference on Foundations of Software Technology and Theoretical Computer Science
Static Analysis of Communication for Asynchronous Concurrent Programming Languages
SAS '95 Proceedings of the Second International Symposium on Static Analysis
Information and Computation
The m-calculus: a higher-order distributed process calculus
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
What Are Polymorphically-Typed Ambients?
ESOP '01 Proceedings of the 10th European Symposium on Programming Languages and Systems
A Typed Process Calculus for Fine-Grained Resource Access Control in Distributed Computation
TACS '01 Proceedings of the 4th International Symposium on Theoretical Aspects of Computer Software
Typing Mobility in the Seal Calculus
CONCUR '01 Proceedings of the 12th International Conference on Concurrency Theory
Typing and Subtyping Mobility in Boxed Ambients
CONCUR '02 Proceedings of the 13th International Conference on Concurrency Theory
Security policy in a declarative style
PPDP '05 Proceedings of the 7th ACM SIGPLAN international conference on Principles and practice of declarative programming
Information and Computation
Typing communicating component assemblages
GPCE '08 Proceedings of the 7th international conference on Generative programming and component engineering
Typing Component-Based Communication Systems
FMOODS '09/FORTE '09 Proceedings of the Joint 11th IFIP WG 6.1 International Conference FMOODS '09 and 29th IFIP WG 6.1 International Conference FORTE '09 on Formal Techniques for Distributed Systems
Information and Computation
Resource access and mobility control with dynamic privileges acquisition
ICALP'03 Proceedings of the 30th international conference on Automata, languages and programming
Access control based on code identity for open distributed systems
TGC'07 Proceedings of the 3rd conference on Trustworthy global computing
Semantic subtyping: challenges, perspectives, and open problems
ICTCS'05 Proceedings of the 9th Italian conference on Theoretical Computer Science
The kell calculus: a family of higher-order distributed process calculi
GC'04 Proceedings of the 2004 IST/FET international conference on Global Computing
Component-oriented programming with sharing: containment is not ownership
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Hi-index | 0.00 |
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 initialize parameters and then execute the code in its local environment. In this paper, we propose a fine-grained typing system for a higher-order pi-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 a unique constant type, indicating essentially that they are well typed relative to a particular environment, types all processes.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 in both 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 behavioral equivalence for the higher-order pi-calculus. The expressiveness of our types enables us to state and prove interesting identities between typed processes.