Affiliation:
1. Microsoft Research Institute, Macquarie University, Sydney, Australia
Abstract
Object-oriented programming languages allow inter-object aliasing. Although necessary to construct linked data structures and networks of interacting objects, aliasing is problematic in that an aggregate object's state can change via an alias to one of its components, without the aggregate being aware of any aliasing.
Ownership types
form a static type system that indicates object ownership. This provides a flexible mechanism to limit the visibility of object references and restrict access paths to objects, thus controlling a system's dynamic topology. The type system is shown to be sound, and the specific aliasing properties that a system's object graph satisfies are formulated and proven invariant for well-typed programs.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
124 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Polymorphic Reachability Types: Tracking Freshness, Aliasing, and Separation in Higher-Order Generic Programs;Proceedings of the ACM on Programming Languages;2024-01-05
2. Encore: Coda;Lecture Notes in Computer Science;2024
3. Inference of Resource Management Specifications;Proceedings of the ACM on Programming Languages;2023-10-16
4. Reference Capabilities for Flexible Memory Management;Proceedings of the ACM on Programming Languages;2023-10-16
5. A Grounded Conceptual Model for Ownership Types in Rust;Proceedings of the ACM on Programming Languages;2023-10-16