ACM SIGPLAN Notices · 2005 · 29 citations · 23 references
ComputingComputer ScienceProgramming LanguagesSystems ArchitectureSystems ProgrammingAccess ControlAccess RightsModule SystemsObject-oriented DesignObject-oriented ProgrammingType SystemsAbstract Data TypesEncapsulationFirst-class FunctionsInformation HidingOwnership Type SystemsOwnership TypesParametric PolymorphismType Theory
Today's module systems do not effectively support information hiding in the presence of shared mutable objects, causing serious problems in the development and evolution of large software systems. Ownership types have been proposed as a solution to this problem, but current systems have ad-hoc access restrictions and are limited to Java-like languages.In this paper, we describe System F own , an extension of System F with references and ownership. Our design shows both how ownership fits into standard type theory and the encapsulation benefits it can provide in languages with first-class functions, abstract data types, and parametric polymorphism. By looking at ownership in the setting of SystemF, we were able to develop a design that is more principled and flexible than previous ownership type systems, while also providing stronger encapsulation guarantees.
23
Separation logic: a logic for shared mutable data structures
John Reynolds · 2003 · 2.2K citations
Region-Based Memory Management
Mads Tofte, Jean-Pierre Talpin · Information and Computation · 1997 · 617 citations
Ownership types for flexible alias protection
David G. Clarke, John Potter, James Noble · 1998 · 578 citations · Full text
Ownership types for safe programming
Chandrasekhar Boyapati, Robert Lee, Martin Rinard · 2002 · 571 citations