Results 1 -
2 of
2
Static Analysis for Understanding Shared Objects in Open Concurrent Java Programs
"... Abstract—Concurrent programming with shared memory in an object-oriented language such as Java is notoriously difficult. Therefore, it is important to study new program understanding techniques for concurrent object-oriented languages. This paper studies shared objects in open concurrent Java progra ..."
Abstract
- Add to MetaCart
Abstract—Concurrent programming with shared memory in an object-oriented language such as Java is notoriously difficult. Therefore, it is important to study new program understanding techniques for concurrent object-oriented languages. This paper studies shared objects in open concurrent Java programs. First, it proposes a classification of shared objects into three categories: central, owned and distributed. Second, it presents a new static analysis that infers central, owned and distributed objects, as well as experiments with the analysis. I.
Tunable Static Inference for . . .
"... Object ownership is useful for many applications, including program verification, thread synchronization, and memory management. However, the annotation overhead of ownership type systems hampers their widespread application. This paper addresses this issue by presenting a tunable static type infere ..."
Abstract
- Add to MetaCart
Object ownership is useful for many applications, including program verification, thread synchronization, and memory management. However, the annotation overhead of ownership type systems hampers their widespread application. This paper addresses this issue by presenting a tunable static type inference for Generic Universe Types. In contrast to classical type systems, ownership types have no single most general typing. Our inference chooses among the legal typings via heuristics. Our inference is tunable: users can indicate a preference for certain typings by adjusting the heuristics or by supplying partial annotations for the program. We present how the constraints of Generic Universe Types can be encoded as a boolean satisfiability (SAT) problem and how a weighted Max-SAT solver finds a correct Universe typing that optimizes the weights. We implemented the static inference tool, applied our inference tool to four real-world applications, and inferred interesting ownership structures.

