Abstract. Ownership type systems describe a heap topology and enforce an encapsulation discipline; they aid in various program correctness and understanding tasks. However, the annotation overhead of ownership type systems has hindered their widespread use. We present a unified framework for specification, type inference and type checking of ownership type systems, and instantiate the framework for two such systems: Universe Types and Ownership Types. We present an objective metric defining a “best typing ” for these type systems, and develop an inference approach that maximizes the metric. The programmer can influence the inference by adding partial annotations to the program. We implemented the approach on top of the Checker Framework and...
Abstract-Ownership and related systems impose restrictions on the object graph that can help improve...
Abstract. Object ownership is an approach to controlling aliasing in programming languages. Proposal...
Ownership types enforce encapsulation in object-oriented programs by ensuring that objects cannot be...
Gradual Ownership Types are a framework allowing programs to be partially annotated with ownership t...
Abstract. Ownership types characterize the topology of objects in the heap, through a characterizati...
Gradual Ownership Types are a framework allowing programs to be partially annotated with ownership t...
Abstract This paper describes a novel mechanism for upgrading objects in an object-oriented database...
Ownership types support information hiding by providing statically enforceable object encapsulation ...
Ownership types were devised nearly 15 years ago to provide a stronger notion of protection to objec...
The Universe Type System is an ownership type system for object-oriented programming languages that ...
The object-oriented community is paying increasing attention to techniques for object instance encap...
This position paper summarizes recent developments related to the Universe type system and suggests ...
Containment of objects is a natural concept that has been poorly supported in object-oriented prog...
We present a type system that allows to express a hierarchical partitioning of the object store into...
Object ownership allows us to statically control run-time aliasing in order to provide a strong noti...
Abstract-Ownership and related systems impose restrictions on the object graph that can help improve...
Abstract. Object ownership is an approach to controlling aliasing in programming languages. Proposal...
Ownership types enforce encapsulation in object-oriented programs by ensuring that objects cannot be...
Gradual Ownership Types are a framework allowing programs to be partially annotated with ownership t...
Abstract. Ownership types characterize the topology of objects in the heap, through a characterizati...
Gradual Ownership Types are a framework allowing programs to be partially annotated with ownership t...
Abstract This paper describes a novel mechanism for upgrading objects in an object-oriented database...
Ownership types support information hiding by providing statically enforceable object encapsulation ...
Ownership types were devised nearly 15 years ago to provide a stronger notion of protection to objec...
The Universe Type System is an ownership type system for object-oriented programming languages that ...
The object-oriented community is paying increasing attention to techniques for object instance encap...
This position paper summarizes recent developments related to the Universe type system and suggests ...
Containment of objects is a natural concept that has been poorly supported in object-oriented prog...
We present a type system that allows to express a hierarchical partitioning of the object store into...
Object ownership allows us to statically control run-time aliasing in order to provide a strong noti...
Abstract-Ownership and related systems impose restrictions on the object graph that can help improve...
Abstract. Object ownership is an approach to controlling aliasing in programming languages. Proposal...
Ownership types enforce encapsulation in object-oriented programs by ensuring that objects cannot be...