2005
DOI: 10.1145/1047659.1040329
|View full text |Cite
|
Sign up to set email alerts
|

Connecting effects and uniqueness with adoption

Abstract: "Adoption" is when on piece of stat is logically embedded in another piece of state. Adoption provides information hiding (the adopter can be used as a proxy for the adoptee) and with linear existentials, provides a way to store unique pointers in shared state. In this paper, we give an operational semantics of adoption in a simple procedural language with pointers to records. We define a "permission" type-system that uses adoption to model both effects and uniqueness. We prove type soundness (well-typed progr… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
38
0

Year Published

2007
2007
2019
2019

Publication Types

Select...
5
2
1

Relationship

0
8

Authors

Journals

citations
Cited by 25 publications
(38 citation statements)
references
References 18 publications
0
38
0
Order By: Relevance
“…Others have modeled dependent objects with linear implications [12,25,21] but it is unclear how well those approaches can be automated. Our solution is to use a live variable analysis to detect dead objects, i.e., dead references to objects with unique permissions, and implicitly release any captured permissions from these dead objects.…”
Section: Plural: Access Permissions For Javamentioning
confidence: 99%
See 1 more Smart Citation
“…Others have modeled dependent objects with linear implications [12,25,21] but it is unclear how well those approaches can be automated. Our solution is to use a live variable analysis to detect dead objects, i.e., dead references to objects with unique permissions, and implicitly release any captured permissions from these dead objects.…”
Section: Plural: Access Permissions For Javamentioning
confidence: 99%
“…Existing work on permissions recognized these challenges [11,12] but only supports unique and immutable permissions directly and does not track behavioral properties (such as typestates) with permissions.…”
Section: Related Workmentioning
confidence: 99%
“…Following Boyland and Retert (2005), it would be possible to allow carving multiple objects out of a group region, provided one statically proves or dynamically checks that these objects are distinct. The degenerate case where only one object can be carved out represents a sweet spot, in the sense that no side condition is needed.…”
Section: Concrete Resourcesmentioning
confidence: 99%
“…We have designed a type system [?] based on fractional permissions [5,6] that we believe will achieve this goal, but space precludes including it here.…”
Section: Semanticsmentioning
confidence: 99%