English

Tracing sharing in an imperative pure calculus (Extended Version)

Programming Languages 2018-08-03 v3

Abstract

We introduce a type and effect system, for an imperative object calculus, which infers "sharing" possibly introduced by the evaluation of an expression, represented as an equivalence relation among its free variables. This direct representation of sharing effects at the syntactic level allows us to express in a natural way, and to generalize, widely-used notions in literature, notably "uniqueness" and "borrowing". Moreover, the calculus is "pure" in the sense that reduction is defined on language terms only, since they directly encode store. The advantage of this non-standard execution model with respect to a behaviourally equivalent standard model using a global auxiliary structure is that reachability relations among references are partly encoded by scoping.

Keywords

Cite

@article{arxiv.1803.05838,
  title  = {Tracing sharing in an imperative pure calculus (Extended Version)},
  author = {Paola Giannini and Tim Richter and Marco Servetto and Elena Zucca},
  journal= {arXiv preprint arXiv:1803.05838},
  year   = {2018}
}
R2 v1 2026-06-23T00:54:27.799Z