Region analysis and a π-calculus with groups

  • Authors:
  • Silvano Dal Zilio;Andrew D. Gordon

  • Affiliations:
  • Microsoft Research, 7 J J Thomson Avenue, Cambridge CB3 0FB, United Kingdom (e-mail: adg@microsoft.com);Microsoft Research, 7 J J Thomson Avenue, Cambridge CB3 0FB, United Kingdom (e-mail: adg@microsoft.com)

  • Venue:
  • Journal of Functional Programming
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.