2007
DOI: 10.1007/978-3-540-71316-6_24
|View full text |Cite
|
Sign up to set email alerts
|

Immutable Objects for a Java-Like Language

Abstract: Abstract. We extend a Java-like language with immutability specifications and a static type system for verifying immutability. A class modifier immutable specifies that all class instances are immutable objects. Ownership types specify the depth of object states and enforce encapsulation of representation objects. The type system guarantees that the state of immutable objects does not visibly mutate during a program run. Provided immutability-annotated classes and methods are final, this is true even if immuta… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
21
0

Year Published

2007
2007
2011
2011

Publication Types

Select...
5
1
1

Relationship

1
6

Authors

Journals

citations
Cited by 25 publications
(21 citation statements)
references
References 15 publications
0
21
0
Order By: Relevance
“…Following our earlier work [18], we support the distinction between mutable and im mutable objects through access qualifiers on types:…”
Section: Specifying Immutability With Type Qualifiersmentioning
confidence: 95%
See 2 more Smart Citations
“…Following our earlier work [18], we support the distinction between mutable and im mutable objects through access qualifiers on types:…”
Section: Specifying Immutability With Type Qualifiersmentioning
confidence: 95%
“…Specifically, it must guarantee that instances of immutable classes encapsulate their representation objects and that their object constructors do not leak self-references. In our earlier paper [18], we enforced these properties using two typebased confinement techniques (in addition to the access qualifiers Rd and RdWr), namely a dedicated ownership type system for enforcing encapsulation of representation ob jects, and so-called anonymous methods [32] for confining self-references during ob ject construction. Unfortunately, the resulting type system was more complex than one would desire.…”
Section: Object Confinement With Qualifier-polymorphic Methodsmentioning
confidence: 99%
See 1 more Smart Citation
“…Immutability is present in other type systems (e.g., Javari [Tschantz and Ernst 2005]; Jimuva [Haack et al 2007]; IGJ [Zibin et al 2007]; and Joe 3 [Östlund et al 2008]) and in a dynamic encoding of ownership called frozen objects [Leino et al 2008]. Investigating the combination with Universe types is interesting future work.…”
Section: Read-only References and Immutabilitymentioning
confidence: 99%
“…Immutability is enforced through compiler checks in addition to ownership types, an approach similar to other immutable object schemes [4,15]. The tool enforces the following requirements on classes declared as immutable:…”
Section: Immutable Typesmentioning
confidence: 99%