|
ABSTRACT
Sharing mutable data (via aliasing) is a powerful programming technique. To facilitate sharing, object-oriented programming languages permit the programmer to selectively break encapsulation boundaries. However, sharing data makes programs harder to understand and reason about, because, unlike encapsulated data, shared data cannot be reasoned about in a modular fashion. This paper presents an analysis and a visualizer to help the programmer understand and reason about shared data.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Rahul Agarwal and Scott D. Stoller. Type inference for parameterized race-free Java. In Giorgio Levi and Bernhard Steffen, editors, Proc. 5th VMCAI, volume 2937 of LNCS, pages 149--160, Venice, Italy, January 2004.
|
| |
2
|
|
| |
3
|
Paulo Sergio Almeida. Balloon types: Controlling sharing of state in data types. In Mehmet Aksit and Satoshi Matsuoka, editors, Proc. 11th ECOOP, volume 1241 of LNCS, Jyväskylä, Finland, June 1997.
|
 |
4
|
David F. Bacon , Peter F. Sweeney, Fast static analysis of C++ virtual function calls, Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.324-341, October 06-10, 1996, San Jose, California, United States
|
| |
5
|
|
| |
6
|
|
 |
7
|
David G. Clarke , John M. Potter , James Noble, Ownership types for flexible alias protection, Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.48-64, October 18-22, 1998, Vancouver, British Columbia, Canada
|
| |
8
|
|
 |
9
|
|
 |
10
|
John Hogg, Islands: aliasing protection in object-oriented languages, Conference proceedings on Object-oriented programming systems, languages, and applications, p.271-285, October 06-11, 1991, Phoenix, Arizona, United States
|
| |
11
|
Patrick Lam and Martin Rinard. A Type System and Analysis for the Automatic Extraction and Enforcement of Design Information. In Luca Cardelli, editor, Proc. 17th ECOOP, volume 2743 of LNCS, pages 275--302, Darmstadt, Germany, July 2003.
|
| |
12
|
|
 |
13
|
|
| |
14
|
|
| |
15
|
Peter Müller. Modular Specification and Verification of Object-Oriented Programs. PhD thesis, Fern Universität Hagen, 2001.
|
| |
16
|
|
 |
17
|
|
| |
18
|
David Lorge Parnas. Designing Software for Ease of Extension and Contraction. IEEE Transactions on Software Engineering, SE-5(2), March 1979.
|
| |
19
|
Derek Rayside. A generic worklist algorithm for graph reachability problems in program analysis. Master's thesis, University of Waterloo, 2001.
|
 |
20
|
Neeraj Sangal , Ev Jordan , Vineet Sinha , Daniel Jackson, Using dependency models to manage software architecture, Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 16-20, 2005, San Diego, CA, USA
[doi> 10.1145/1094855.1094915]
|
| |
21
|
Nick Scerbakov. Software Architecture Course LV 706.016 & LV 706.017. Graz University of Technology, IICM, 2002. http://coronet.iicm.edu/sa.
|
| |
22
|
Alisdair Wren. Ownership type inference. Master's thesis, Department of Computing, Imperial College, 2003.
|
 |
23
|
|
|