Linear regions are all you need

  • Authors:
  • Matthew Fluet;Greg Morrisett;Amal Ahmed

  • Affiliations:
  • Cornell University, Ithaca, NY;Harvard University, Cambridge, MA;Harvard University, Cambridge, MA

  • Venue:
  • ESOP'06 Proceedings of the 15th European conference on Programming Languages and Systems
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The type-and-effects system of the Tofte-Talpin region calculus makes it possible to safely reclaim objects without a garbage collector. However, it requires that regions have last-in-first-out (LIFO) lifetimes following the block structure of the language. We introduce λrgnUL, a core calculus that is powerful enough to encode Tofte-Talpin-like languages, and that eliminates the LIFO restriction. The target language has an extremely simple, substructural type system. To prove the power of the language, we sketch how Tofte-Talpin-style regions, as well as the first-class dynamic regions and unique pointers of the Cyclone programming language can be encoded in λrgnUL.