| Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Proceedings of ECOOP '97, volume 1241 of Lecture Notes in Computer Science, pages 32--59. Springer, June 1997. |
.... Flexible Alias Protection [33] Free Deep Vault [16, 17] #Conventional Shallow Orthogonal AliasJava [1] Conventional Shallow Parameter Pivot Uniqueness [29] Capabilities for sharing [11] d #Conventional #Shallow #Parameter Islands [26] Conventional Full #Parameter Balloons [2] Conventional Full Parameter OOFX Alias Burying [9, 23] Conventional None Parameter Ei#el # [31] Conventional None Parameter Virginity [30] Free None Parameter Table 2. Comparison. Legend: not applicable; a e see text We consider three kinds of ownership encapsulation: shallow direct ....
....borrow a unique reference. Borrowed references may not be assigned to fields. orthogonal borrowing references are either unique or non unique. Scope restrictions apply to a borrowed unique reference to ensure that the uniqueness invariant can be regained. In Ei#el # [31] AliasJava [1] Balloons [2], Pivot Uniqueness [29] and Capabilities for sharing [11] borrowing weakens uniqueness since the unique reference is still visible and usable despite the existence of the temporary borrowed aliases. This is avoided in PRFJ [8] Vault [16] and our proposal by using nullification or scope ....
Paulo Sergio Almeida. Balloon Types: Controlling sharing of state in data types. In ECOOP Proceedings, June 1997.
.... Burying [9, 19] b Conventional None Limited , Ei el [27] Conventional None Limited Guava [3] Conventional Thread AliasJava [1] d Conventional Shallow Limited PRFJ [7] e Conventional E ectively Deep Limited Universes [28] f None Deep Balloons [2] g Conventional Full Limited p Virginity [26] Free None Limited Pivot Uniqueness [25] h Conventional Shallow Limited Capabilities for sharing [10] Conventional Shallow Limited = Vault [15, 16] Conventional Shallow Orthogonal , Table 2: Comparison. Legend: ....
Paulo Sergio Almeida. Balloon Types: Controlling sharing of state in data types. In ECOOP Proceedings, June 1997.
....access to the objects in a region; any object that can name the region can access the objects inside it. Ownership types, which describe a limited static or dynamic scope within which sharing can occur, can also be used to control aliasing. Early work such as Islands [Hog91] and Balloons [Alm97] imposed strict rules on sharing objects between components, significantly limiting expressiveness. A more recent variation, Confined Types [BV99] allows programmers to restrict object references to within a particular package; the system has been extended to support inference of confined types ....
Paulo Srgio Almeida. Balloon Types: Controlling Sharing of State in Data Types, Proc. European Conference on Object-Oriented Programming, Jyvskyl, Finland, June 1997.
....8 type systems have been proposed to control the e ect of aliasing. They achieve this by adopting one or both of the following strategies: Alias prevention: Alias creation is avoided either by using unique types [3, 42, 10] or placing constraints on the connectivity of the object graph [29, 1, 13]. Access control: Side e ects resulted from aliases is controlled either by tagging aliases to be read only [29, 36, 51] or imposing other forms of access control [45] As these type systems are e ectively access control constraints, they could be applied to enforce safety policies [61, 9, 8] ....
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Proceedings of the 11th European Conference for Object-Oriented Programming (ECOOP'97), Jyvaskyla, Finland, June 1997.
....access to the objects in a region; any object that can name the region can access the objects inside it. Ownership types, which describe a limited static or dynamic scope within which sharing can occur, can also be used to control aliasing. Early work such as Islands [Hog91] and Balloons [Alm97] imposed strict rules on sharing objects between components, significantly limiting expressiveness. ESC Java s specification system enables program specific reasoning about pivot objects that are similar to our owned objects [DLN98] however, their system could not guarantee that pivot objects are ....
Paulo Srgio Almeida. Balloon Types: Controlling Sharing of State in Data Types, Proc. European Conference on Object-Oriented Programming, 1997.
....for similar pur pose. A system for program analysis with additional information about data structures is proposed in [5] A type based approach for conveying alias properties is given in [12] Documenting alias information in programs and verifying ownership properties is discussed in [2] and [1]. 6 Conclusions We introduced a small object modeling language. We defined its syntax and semantics in terms of program heaps. We can summarize the concept of program conforming to an object model as follows: 1. an object model consists of definitions and constraints 2. definitions and ....
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In ECOOP, 1997.
....does not check that a nonconsumable reference cannot be used by code that uses the original reference, nor does it permit consumable receivers such as in buf.getFile( in our example. Minsky s proposal also does not preserve uniqueness in cases such as u. m(u) 14, footnote 4] Almeida s Balloons [2] were designed to provide strong encapsulation. Similar to a Hogg island, an instance of a balloon type has the only (stored) reference to any object reachable from it. This restriction is enforced in two different ways. First, references to internal non balloon objects cannot be passed out of the ....
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Mehmet Aksit and Satoshi Matsuoka, editors, ECOOP'97 Conference, Jyvaskyla, Finland, June 9--13, volume 1241 of Lecture Notes in Computer Science, pages 32--59. Springer, Berlin, 1997.
....has been the public class Parent protected Parent nonAnonymousMethod( return this; violation of A1 class NotConf extends Parent Parent violation( return nonAnonymousMethod( hidden widening Figure 19: Con nement violation C1. focus of numerous papers in the recent years [12, 11, 8, 1, 15, 10, 13, 7]. We will discuss brie y the most relevant work. Bokowski and Vitek [5] introduced the notion of con ned types. In their paper, con ned types are explicitly declared. The implication is that software must be designed and implemented with con nement in mind. Their paper discussed an ....
....be aliased from the outside. Argument objects can have di erent roles, and the model guarantees that an owner cannot introduce aliasing between roles. Clarke, Potter, and Noble [7] have formalized representation containment by means of ownership types. Hogg s Islands [11] and Almeida s Balloons [1] have similar aims. An Island or Balloon is an owner object that protects its internal representation from aliasing. The main di erence from [15] is that both proposals strive for full encapsulation, that is, all objects reachable from an owner are protected from aliasing. This is equivalent to ....
Paulo Sergio Almeida. Balloon Types: Controlling sharing of state in data types. In ECOOP Proceedings, June 1997.
....used for similar purpose. A system for program analysis with additional information about data structures is proposed in [5] A type based approach for conveying alias properties is given in [12] Documenting alias information in programs and verifying ownership properties is discussed in [2] and [1]. 6 Conclusions We introduced a small object modeling language. We de ned its syntax and semantics in terms of program heaps. We can summarize the concept of program conforming to an object model as follows: 1. an object model consists of de nitions and constraints 2. de nitions and ....
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Proceedings of the 11th European Conference on Object-Oriented Programming, 1997.
....Figure 1: Persons sharing their addresses. Aliasing. When being passed as parameters or results, copies of the values of private reference variables are handed out to other objects, thus creating aliases 1 to the transitive state of an object. As pointed out by many authors (e.g. Hog91, Alm97, BLM97, NVP98] problems can arise when such an alias is used to change the transitive state in a way not anticipated by the creator of the alias. In a nutshell, the limitation of visibility based encapsulation is that traditional external interfaces ffl do neither prevent the creation of ....
....the limitation of visibility based encapsulation is that traditional external interfaces ffl do neither prevent the creation of aliases to the transitive state of an object, ffl nor do they protect against undesired manipulation of the transitive state via aliases. Sharing. Many authors ( Hog91, Alm97, BLM97, NVP98] have opted for the first solution, proposing techniques for alias prevention to address the problems caused by aliasing. However, aliasing itself is not the problem, as even pointed out in [NVP98] It is traditionally and successfully applied as a means to express all forms of ....
[Article contains additional citation context not shown here]
Paulo S'ergio Almeida. Balloon types: Controlling sharing of state in data types. In Proceedings of ECOOP'97, number 1241 in LNCS. Springer, 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Proceedings of ECOOP '97, volume 1241 of Lecture Notes in Computer Science, pages 32--59. Springer, June 1997.
No context found.
Paulo Srgio Almeida. Balloon Types: Controlling Sharing of State in Data Types, Proc. European Conference on Object-Oriented Programming, Jyvskyl, Finland, June 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Proceedings of the 11th European Conference for Object-Oriented Programming (ECOOP'97), Jyvaskyla, Finland, June 1997.
No context found.
Paulo Sergio Almeida. Balloon Types: Controlling sharing of state in data types. In ECOOP Proceedings, June 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Proc. 11th ECOOP, 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In European Conference for Object-Oriented Programming (ECOOP), June 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Proceedings of the 11th European Conference for Object-Oriented Programming, Jyvaskyla, Finland, June 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Proc. 11th ECOOP, 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Mehmet Aksit and Satoshi Matsuoka, editors, ECOOP'97---Object-Oriented Programming, 11th European Conference, volume 1241 of LNCS, pages 32--59, Jyvaskyla, Finland, 9--13 June 1997. Springer-Verlag.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Mehmet Aksit and Satoshi Matsuoka, editors, ECOOP'97---Object-Oriented Programming, 11th European Conference, volume 1241 of LNCS, pages 32--59, Jyvaskyla, Finland, 9--13 June 1997. Springer-Verlag.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In European Conference for Object-Oriented Programming (ECOOP), June 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In European Conference for Object-Oriented Programming (ECOOP), June 1997.
No context found.
Paulo S ergio Almeida. Balloon types: Controlling sharing of state in data types. In Mehmet Aksit and Satoshi Matsuoka, editors, ECOOP'97 --- Object-Oriented Programming, 11th European Conference, volume 1241 of Lecture Notes in Computer Science, pages 32--59. Springer, 1997.
No context found.
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Mehmet Akit and Satoshi Matsuoka, editors, ECOOP '97 Object-Oriented Programming 11th European Conference, Jyvskyl, Finland, volume 1241, pages 3259. Springer-Verlag, New York, NY, 1997.
No context found.
Paulo Sergio Almeida. Balloon Types: Controlling sharing of state in data types. In ECOOP Proceedings, June 1997.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC