Skip to content

GSD

Sections
Personal tools
You are here: Home » Publications » Balloon types: controlling sharing of state in data types

Balloon types: controlling sharing of state in data types

Document Actions
Up one level
Paulo Sérgio Almeida. Balloon types: controlling sharing of state in data types. Proceedings ECOOP'97, volume 1241 of LNCS, pages 32--59. 6/1997. Springer-Verlag.

Current data abstraction mechanisms are not adequate to control sharing of state in the general case involving objects in linked structures. The pervading possibility of sharing is a source of errors and an obstacle to language implementation techniques. We present a general extension to programming languages which makes the ability to share state a first class property of a data type, resolving a long-standing flaw in existing data abstraction mechanisms. Balloon types enforce a strong form of encapsulation: no state reachable (directly or transitively) by a balloon object is referenced by any external object. Syntactic simplicity is achieved by relying on a non-trivial static analysis as the checking mechanism. Balloon types are applicable in a wide range of areas such as program transformation, memory management and distributed systems. They are the key to obtaining self-contained composite objects, truly opaque data abstractions and value types---important concepts for the development of large scale, provably correct programs.

View psa-ecoop97.ps (PostScript document 639Kb)

@InProceedings{Almeida97,
  author = "Paulo S\'ergio Almeida",
  title = "Balloon Types: Controlling Sharing of State in Data Types",
  pages = "32--59",
  booktitle = "Proceedings {ECOOP}'97",
  month = jun,
  year = "1997",
  series = "LNCS",
  volume = "1241",
  publisher =    "Springer-Verlag",
}

Please read the Copyright Notice before downloading.
Created by gsd
Last modified 2004-11-24 04:24 PM
« January 2015 »
Su Mo Tu We Th Fr Sa
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
 
 

Powered by Plone

This site conforms to the following standards: