Notions of computation and monads
Information and Computation
A calculus of mobile processes, II
Information and Computation
Higher-order concurrent programs with finite communication topology (extended abstract)
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Information and Computation
Better static memory management: improving region-based analysis of higher-order languages
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
Lisp and Symbolic Computation - Special issue on state in programming languages (part I)
From region inference to von Neumann machines via region representation inference
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The reflexive CHAM and the join-calculus
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
A partially deadlock-free typed process calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
The marriage of effects and monads
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Typed memory management in a calculus of capabilities
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A calculus for cryptographic protocols
Information and Computation
Proceedings of the fourth ACM SIGPLAN international conference on Functional programming
Recursion and dynamic data-structures in bounded space: towards embedded ML programming
Proceedings of the fourth ACM SIGPLAN international conference on Functional programming
Integrating functional and imperative programming
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Communicating and mobile systems: the &pgr;-calculus
Communicating and mobile systems: the &pgr;-calculus
Pict: a programming language based on the Pi-Calculus
Proof, language, and interaction
Stratified operational semantics for safety and correctness of the region calculus
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The Definition of Standard ML
PI-Calculus: A Theory of Mobile Processes
PI-Calculus: A Theory of Mobile Processes
ICALP '92 Proceedings of the 19th International Colloquium on Automata, Languages and Programming
On Asynchrony in Name-Passing Calculi
ICALP '98 Proceedings of the 25th International Colloquium on Automata, Languages and Programming
From CML to Process Algebras (Extended Abstract)
CONCUR '93 Proceedings of the 4th 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
Region Analysis and the Polymorphic Lambda Calculus
LICS '99 Proceedings of the 14th Annual IEEE Symposium on Logic in Computer Science
Typing correspondence assertions for communication protocols
Theoretical Computer Science
A Retrospective on Region-Based Memory Management
Higher-Order and Symbolic Computation
Bisimilarity for the Region Calculus
Higher-Order and Symbolic Computation
Information and Computation
Information and Computation
ESOP'08/ETAPS'08 Proceedings of the Theory and practice of software, 17th European conference on Programming languages and systems
Hi-index | 0.00 |
We show that the typed region calculus of Tofte and Talpin can be encoded in a typed π-calculus equipped with name groups and a novel effect analysis. In the region calculus, each boxed value has a statically determined region in which it is stored. Regions are allocated and de-allocated according to a stack discipline, thus improving memory management. The idea of name groups arose in the typed ambient calculus of Cardelli, Ghelli, and Gordon. There, and in our π-calculus, each name has a statically determined group to which it belongs. Groups allow for type-checking of certain mobility properties, as well as effect analyses. Our encoding makes precise the intuitive correspondence between regions and groups. We propose a new formulation of the type preservation property of the region calculus, which avoids Tofte and Talpin's rather elaborate co-inductive formulation. We prove the encoding preserves the static and dynamic semantics of the region calculus. Our proof of the correctness of region de-allocation shows it to be a specific instance of a general garbage collection principle for the π-calculus with effects. We propose new equational laws for letregion, analogous to scope mobility laws in the π-calculus, and show them sound in our semantics.