Author
|
Conference
|
Journal
|
Organization
|
Year
|
DOI
Look for results that meet for the following criteria:
since
equal to
before
between
and
Search in all domains
Limit my searches in the following domains
Agriculture Science
Arts & Humanities
Biology
Chemistry
Computer Science
Economics & Business
Engineering
Environmental Sciences
Geosciences
Material Science
Mathematics
Medicine
Physics
Social Science
Multidisciplinary
Keywords
(6)
Algorithm Design
Case Study
Controlled Experiment
Data Structure
Object Oriented Programming
Program Transformation
Subscribe
Academic
Publications
Transformation for class immutability
Edit
Transformation for class immutability
(
Citations: 1
)
BibTex
|
RIS
|
RefWorks
Download
Fredrik Kjolstad
,
Gabriel Acevedo
,
Marc Snir
It is common for object-oriented programs to have both mutable and immutable classes. Immutable classes simplify programing because the programmer does not have to reason about side-eects. Sometimes programmers write immutable classes from scratch, other times they transform mutable into immutable classes. To transform a mutable class, programmers must find all methods that mutate its transitive state and all objects that can enter or escape the state of the class. The analyses are non-trivial and the rewriting is tedious. Fortunately, this can be automated. We present an algorithm and a tool, Immutator, that enables the programmer to safely transform a mutable class into an immutable class. Two case studies and one
controlled experiment
show that Immutator is useful. It (i) reduces the burden of making classes immutable, (ii) is fast enough to be used interactively, and (iii) is much safer than manual transformations.
Conference:
International Conference on Software Engineering - ICSE
, pp. 61-70, 2011
DOI:
10.1145/1985793.1985803
Cumulative
Annual
View Publication
The following links allow you to view full publications. These links are maintained by other sources not affiliated with Microsoft Academic Search.
(
doi.acm.org
)
(
www.informatik.uni-trier.de
)
(
ieeexplore.ieee.org
)
(
ieeexplore.ieee.org
)
More »
Citation Context
(1)
...Recently, the same group have also proposed a technique and a tool for making classes immutable, thereby ensuring their thread safety [
15
]...
Max Schäfer
,
et al.
Refactoring Java programs for flexible locking
References
(20)
Effective java: programming language guide
(
Citations: 117
)
J. Bloch
Published in 2001.
Escape Analysis for Java
(
Citations: 358
)
Jong-Deok Choi
,
Manish Gupta
,
Mauricio J. Serrano
,
Vugranam C. Sreedhar
,
Samuel P. Midkiff
Journal:
Sigplan Notices - SIGPLAN
, vol. 34, no. 10, pp. 1-19, 1999
Refactoring sequential Java code for concurrency via concurrent libraries
(
Citations: 17
)
John Marrero
,
Michael D. Ernst
Conference:
International Conference on Software Engineering - ICSE
, pp. 397-407, 2009
Relooper: refactoring for loop parallelism in Java
(
Citations: 2
)
Mihai Tarce
,
Cosmin Radoi
,
Marius Minea
,
Ralph Johnson
Conference:
Conference on Object-Oriented Programming Systems, Languages, and Applications - OOPSLA
, pp. 793-794, 2009
An Empirical Investigation of the Influence of a Type of Side Effects on Program Comprehension
(
Citations: 15
)
José Javier Dolado
,
Mark Harman
,
Mari Carmen Otero
,
Lin Hu
Journal:
IEEE Transactions on Software Engineering - TSE
, vol. 29, no. 7, pp. 665-670, 2003
Order by:
Citations
(1)
Refactoring Java programs for flexible locking
(
Citations: 1
)
Max Schäfer
,
Manu Sridharan
,
Julian Dolby
,
Frank Tip
Conference:
International Conference on Software Engineering - ICSE
, pp. 71-80, 2011