arXiv · 1311.7242
Programming with Permissions in Mezzo
Abstract
We present Mezzo, a typed programming language of ML lineage. Mezzo is equipped with a novel static discipline of duplicable and affine permissions, which controls aliasing and ownership. This rules out certain mistakes, including representation exposure and data races, and enables new idioms, such as gradual initialization, memory re-use, and (type)state changes. Although the core static discipline disallows sharing a mutable data structure, Mezzo offers several ways of working around this restriction, including a novel dynamic ownership control mechanism which we dub "adoption and abandon".
Explore related subjects
Keep this discovery
Jonathan Protzenko, François Pottier. 2013-11-28. Programming with Permissions in Mezzo. https://doi.org/10.1145/2500365.2500598
Cite the original work for its findings. Save a collection to share your selection of sources.