🤖 AI Summary
This paper addresses the absence of global variable semantics in region-based functional languages. We propose a unified formalization of type abstraction and region abstraction, naturally deriving the notion of global variables from the Tofte–Talpin region system. By extending the region type system with linear protection mechanisms, we safely model mutable global state—supporting imperative updates while guaranteeing memory safety. Our key contribution is the first demonstration that global variables arise as a logical consequence of unifying region and type abstraction, thereby establishing a deep theoretical connection among region systems, global variables, and linear types. The work includes a formal operational semantics, a sound type system with corresponding typing rules, and a proof of memory safety. It constructs a rigorous theoretical bridge from region-based languages to global state systems, offering a novel paradigm for integrating efficient and safe mutable state into functional languages.
📝 Abstract
We obtain a characterization of global variables by unifying abstraction with region abstraction in a region-based language. More precisely, in a previous work a language called global was presented, whose virtue is to provide a conceptually clear way of introducing imperative operations in a functional language. Memory safety is provided by the concept of linear protection, which connects the global system to a linear one. In this paper we show that the concept of global variable provided by the global language arises from the Tofte and Talping's region language through the unification of abstraction and region abstraction.