36 citations found. Retrieving documents...
Bacon, D. F., Strom, R. E., and Tarafdar, A., "Guava: A Dialect of Java without Data Races", In OOPSLA 2000 Conference Proceedings, pp. 382-400, October 2000.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
External Uniqueness is Unique Enough - Clarke, Wrigstad (2002)   (14 citations)  (Correct)

....[16] and our proposal by using nullification or scope restrictions, and in Alias Burying [9] by invalidating all borrowings if a unique is read while borrowed. Checking the constraints underlying alias burying modularly leads to an interdependence between uniqueness and read e#ects [10] Guava [3] also uses lent parameters to avoid capturing of objects. Some noteworthy remarks regarding Table 2 follow. a) PRFJ [8] permits object graphs which violates deep ownership, but it uses an e#ects system to prevent access through the o#ending references. The result is e#ectively deep ownership. In ....

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: a dialect of Java without data races. In OOPSLA Proceedings, pages 382--400, 2000.


External Uniqueness - Clarke, Wrigstad (2003)   (3 citations)  (Correct)

....a) Islands only allow read only borrowing. b) Boyland s Alias Burying [9] eliminates the need for destructive reads with a clever static analysis. Using this technique here could have been possible, at the cost of complicating our semantics, since an e ects system is required. c) Guava [3] has an interesting combination of features. So called value objects are passed by moving or copying and thus remain uniquely referred to (but not externally so) The con nement of objects (which are disjoint from value objects) is thread based, and while borrowing is possible, it applies only to ....

.... p p Ownership Types [14, 12, 13] None Deep Ownership Types [12, 11] None Shallow Flexible Alias Protection [29] Free Deep Islands [21] a Conventional Full Limited OOFX Alias Burying [9, 19] b Conventional None Limited , Ei el [27] Conventional None Limited Guava [3] Conventional Thread AliasJava [1] d Conventional Shallow Limited PRFJ [7] e Conventional E ectively Deep Limited Universes [28] f None Deep Balloons [2] g Conventional Full Limited p Virginity [26] Free None Limited Pivot Uniqueness [25] h ....

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: a dialect of Java without data races. In OOPSLA Proceedings, pages 382-400, 2000.


Efficient and Precise Datarace Detection for.. - Choi, Lee.. (2002)   (11 citations)  (Correct)

....might occur in any one of them. Flanagan and Freund s datarace detection tool is a static tool for Java [15] which tracks synchronization using extended type inference and checking. Guava is a dialect of Java that statically disallows dataraces by preventing concurrent accesses to shared data [3]. Only instances of classes belonging to the class category called monitor can be shared by multiple threads. By serializing all accesses to fields or methods of the same shared data, Guava can prevent dataraces. Boyapati and Rinard propose a system of type annotations for Java that ensures a ....

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of java without data races. In ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, 2000.


Ownership Types for Safe Programming: Preventing Data.. - Boyapati, Lee, Rinard (2002)   (21 citations)  (Correct)

....are useful to support object migration between threads. The type checker statically verifies that a program uses objects only in accordance with their declared protection mechanisms. Our type system is significantly more expressive than previously proposed type systems for preventing data races [22, 4]. In particular, our type system lets programmers write generic code to implement a class, then create di#erent objects of the class that have di#erent protection mechanisms. We do this by introducing a way of parameterizing classes that lets programmers defer the protection mechanism decision ....

....only by copying the data. A thread cannot pass a pointer to an object to a monitor. More recently, researchers have proposed type systems to prevent data races in object oriented programs. Race Free Java [22] extends the static annotations in ESC Java into a formal race free type system. Guava [4] is another dialect of Java for preventing data races. Our race free type system published earlier [7] lets programmers write generic code to implement a class, and create di#erent objects of the same class that have di#erent protection mechanisms. But the above systems do not prevent deadlocks. ....

D.F.Bacon,R.E.Strom,andA.Tarafdar.Guava:A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


A Type System for Preventing Data Races and Deadlocks.. - Chandrasekhar.. (2002)   (2 citations)  (Correct)

....are useful to support object migration be1 tween threads. The type checker statically verifies that a program uses objects only in accordance with their declared protection mechanisms. Our type system is significantly more expressive than previously proposed type systems for preventing data races [15, 2]. In particular, our type system lets programmers write generic code to implement a class, then create di#erent objects of the class that have di#erent protection mechanisms. We do this by introducing a way of parameterizing classes that lets programmers defer the protection mechanism decision ....

....by copying the data. A thread could not pass a reference to an object to a monitor. More recently, researchers have proposed type systems to prevent data races in object oriented programs. Race Free Java [15] extends the static annotations in Esc Java into a formal race free type system. Guava [2] is another dialect of Java for preventing data races. Our race free type system published earlier [3] lets programmers write generic code to implement a class, and create di#erent objects of the same class that have di#erent protection mechanisms. Our type system described in this paper extends ....

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Safe Runtime Downcasts With Ownership Types - Boyapati, Lee, Rinard (2002)   (2 citations)  (Correct)

....The Extended Static Checker for Java (Esc Java) 10] is an annotation based system that uses a theorem prover to statically detect many kinds of errors including data races and deadlocks. Race Free Java [11] extends the static annotations in Esc Java into a formal race free type system. Guava [3] is another dialect of Java for preventing data races. Parameterized Race Free Java (PRFJ) 5] builds on Race Free Java and lets programmers write generic code to implement a class, and create di erent objects of the same class that have different protection mechanisms. PRFJ also supports objects ....

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Safe Runtime Downcasts With Ownership Types - Boyapati, Lee, Rinard (2002)   (2 citations)  (Correct)

....The Extended Static Checker for Java (Esc Java) 10] is an annotation based system that uses a theorem prover to statically detect many kinds of errors including data races and deadlocks. Race Free Java [11] extends the static annotations in Esc Java into a formal race free type system. Guava [3] is another dialect of Java for preventing data races. Parameterized Race Free Java (PRFJ) 5] builds on Race Free Java and lets programmers write generic code to implement a class, and create di#erent objects of the same class that have different protection mechanisms. PRFJ also supports objects ....

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


A Type System for Preventing Data Races and Deadlocks in.. - Boyapati, Lee, Rinard (2002)   (2 citations)  (Correct)

....are useful to support object migration be1 tween threads. The type checker statically veri es that a program uses objects only in accordance with their declared protection mechanisms. Our type system is signi cantly more expressive than previously proposed type systems for preventing data races [15, 2]. In particular, our type system lets programmers write generic code to implement a class, then create di erent objects of the class that have di erent protection mechanisms. We do this by introducing a way of parameterizing classes that lets programmers defer the protection mechanism decision ....

....by copying the data. A thread could not pass a reference to an object to a monitor. More recently, researchers have proposed type systems to prevent data races in object oriented programs. Race Free Java [15] extends the static annotations in Esc Java into a formal race free type system. Guava [2] is another dialect of Java for preventing data races. Our race free type system published earlier [3] lets programmers write generic code to implement a class, and create di erent objects of the same class that have di erent protection mechanisms. Our type system described in this paper extends ....

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


A Type System for Preventing Data Races and Deadlocks.. - Chandrasekhar.. (2002)   (2 citations)  (Correct)

....are useful to support object migration be1 tween threads. The type checker statically veri es that a program uses objects only in accordance with their declared protection mechanisms. Our type system is signi cantly more expressive than previously proposed type systems for preventing data races [15, 2]. In particular, our type system lets programmers write We do this by introducing a way of parameterizing classes that lets programmers defer the protection mechanism decision from the time when a class is de ned to the times when objects of that class are created. 1.3 Contributions This paper ....

....by copying the data. A thread could not pass a reference to an object to a monitor. More recently, researchers have proposed type systems to prevent data races in object oriented programs. Race Free Java [15] extends the static annotations in Esc Java into a formal race free type system. Guava [2] is another dialect of Java for preventing data races. Our race free type system published earlier [3] lets programmers write generic code to implement a class, and create di erent objects of the same class that have di erent protection mechanisms. Our type system described in this paper extends ....

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented


Programming Dynamically Reconfigurable Open Systems with SALSA - Varela, Agha (2001)   (Correct)

....improve the current Java memory model [28, 30, 18] especially in the case of execution on shared memory multiprocessor architectures with weak memory models, such as the SMP Alpha systems. More radical approaches include adding di erent categories of classes to Java including monitors [22] e.g. [5]) Gray et al. present a very complete survey of mobile agent systems [20] categorized by the programming languages they support. Agent systems supporting multiple programming languages include: Ara, D Agents, and Tacoma. Java based systems include Aglets [26] Concordia, Jumping Beans, and ....

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: a dialect of Java without data races. ACM SIGPLAN Notices, 35(10):382-400, Oct. 2000.


Simple Ownership Types for Object Containment - Clarke, Noble, Potter (2001)   (40 citations)  (Correct)

....Flexible Alias Protection [34] uses a number of annotations to provide nested per object ownership, while permitting objects to refer to objects belonging to their (transitive) container as well as objects they own directly. A dynamically checked variant has also been proposed [32] Guava [4] uses a system of annotations on variables and types similar to Flexible Alias Protection, but motivated towards controlling synchronisation in concurrent Java programs, rather than managing aliasing per se. Con ned Types [8] use only one annotation to con ne objects inside Java packages. This ....

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: A dialect of Java without data races. In OOPSLA'00 Conference Proceedings|Object-Oriented Programming Systems, Languages and Applications, volume 35, pages 382-400, New York, October 2000. ACM Press.


A Parameterized Type System for Race-Free Java Programs - Boyapati, Rinard (2001)   (14 citations)  (Correct)

....execution of a program to dynamically detect potential races [18, 34] static race detection systems [35, 26, 17] and formal type systems that ensure race free The research was supported in part by DARPA AFRL Contract F33615 00 C 1692, NSF Grant CCR00 86154, and NSF Grant CCR00 63513. programs [9, 21, 19, 20, 3]. This paper presents a new static type system for multithreaded object oriented programs; this type system guarantees that any well typed program is free of data races. Every object in our system is associated with a protection mechanism that ensures that accesses to the object never create ....

....or 3) the variable contains the unique reference to the object. The type checker then uses these type speci cations to statically verify that a program uses objects only in accordance with their declared protection mechanisms. Unlike previously proposed type systems for race free programs [21, 19, 20, 3], our type system also lets programmers write generic code to implement a class, then create di erent objects of the class that have di erent protection mechanisms. We do this by introducing a way of parameterizing classes that lets programmers defer the protection mechanism decision from the time ....

[Article contains additional citation context not shown here]

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Analysis of Multithreaded Programs - Rinard (2001)   (13 citations)  (Correct)

....copy operations take place in the context of a synchronized update to mutex data, they execute atomically with respect to the threads sharing the data. It is possible to generalize this approach to handle a wider range of data structures, including linked data structures containing references [6]. Another approach is to provide an augmented type system that enables the programmer to explicitly identify shared data accessible to multiple threads [40, 41, 14] Each piece of shared data is associated with a mutual exclusion lock and 9 the type system enforces the constraint that the program ....

D. Bacon, R. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Proceedings of the 15th Annual Conference on Object-Oriented Programming Systems, Languages and Applications, Portland, OR, Oct. 2000.


The Optimistic Readers Transformation - Robert Strom And (2001)   (1 citation)  Self-citation (Strom)   (Correct)

No context found.

Bacon, D. F., Strom, R. E., and Tarafdar, A., "Guava: A Dialect of Java without Data Races", In OOPSLA 2000 Conference Proceedings, pp. 382-400, October 2000.


Thin Locks - Bacon, Konuru, Murthy, Serrano   Self-citation (Bacon)   (Correct)

....this is an appropriate programming model for a general purpose high level programming language. We have explored the possibility of defining a Java like language in which all access to shared objects is mediated by true monitors, which encapsulate sharable data and thereby prevent data races [4]. Related work [5, 6] has taken a different approach, retaining a shared memory model but requiring annotations that allow a program to be provably race free at compile time. 4. CONCLUSIONS Java s surprisingly rapid acceptance, fueled by the explosive growth of the internet, introduced a number ....

BACON, D. F., STROM, R. E., AND TARAFDAR, A. Guava: A dialect of Java without data races. In ACM Conference on Object-Oriented Systems, Languages, and Applications (Oct. 2000). SIGPLAN Notices, 35, 10, 382--400.


Bit-Level Object-Oriented Programming - Bacon (2000)   Self-citation (Bacon)   (Correct)

....For a multithreaded language, in some cases this may be done with compiler analysis. However, we believe that a better general purpose solution is to eliminate the possibility for unsynchronized simultaneous data access, as we have described in our work on Guava, a race free dialect of Java [2]. 5 Conclusions We have described bit level object oriented programming (BLOOP) a language extension that provides the efficiency and directness of VHDL or Verilog in manipulating bit level quantities, but also provides the object oriented abstraction capabilities of high level languages like ....

Bacon, D. F., Strom, R. E., and Tarafdar, A. Guava: A dialect of java without data races. In OOPSLA '00 Conference Proceedings: Object-Oriented Programming Systems, Languages, and Applications (Minneapolis, Minnesota, Oct. 2000).


Ownership, Encapsulation and the Disjointness of Type and.. - Clarke, Drossopoulou (2002)   (Correct)

No context found.

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: a dialect of Java without data races. In OOPSLA Proceedings, pages 382--400, 2000.


SafeJava: A Unified Type System for Safe Programming - Boyapati (2004)   (2 citations)  (Correct)

No context found.

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Safe Runtime Downcasts with Ownership Types - Boyapati, Lee, Rinard (2002)   (2 citations)  (Correct)

No context found.

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Ownership Types for Safe Programming: Preventing Data.. - Boyapati, Lee, Rinard (2002)   (21 citations)  (Correct)

No context found.

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Atomizer: A Dynamic Atomicity Checker for Multithreaded Programs - Flanagan, Freund (2004)   (5 citations)  (Correct)

No context found.

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Proceedings of the ACM Conference on ObjectOriented Programming, Systems, Languages and Applications, pages 382--400, 2001.


Static Conflict Analysis for Multi-Threaded Object-Oriented.. - von Praun, Gross (2003)   (2 citations)  (Correct)

No context found.

D. Bacon, R. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Proc. Conf. Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA'00), pages 382--400, Oct. 2000.


Object Race Detection - von Praun, Gross (2001)   (25 citations)  (Correct)

No context found.

D. Bacon, R. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Proc. of the ACM Conf. on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2000.


Safe Runtime Downcasts with Ownership Types - Boyapati, Lee, Rinard (2002)   (2 citations)  (Correct)

No context found.

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Static Conflict Analysis for Multi-Threaded Object-Oriented.. - von Praun, Gross (2003)   (2 citations)  (Correct)

No context found.

D. Bacon, R. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Proc. Conf. Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA'00), pages 382--400, Oct. 2000.


Finding Concurrency Bugs in Java - Hovemeyer, Pugh (2004)   (Correct)

No context found.

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: a dialect of Java without data races. In Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, pages 382--400. ACM Press, 2000.


Compiler-Based Object Consistency - von Praun, Gross (2001)   (Correct)

No context found.

D. Bacon, R. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Proc. of the ACM Conf. on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2000.


Analysis of Multithreaded Programs - Rinard (2001)   (13 citations)  (Correct)

No context found.

D. Bacon, R. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Proceedings of the 15th Annual Conference on Object-Oriented Programming Systems, Languages and Applications, Portland, OR, Oct. 2000.


Type-Safe Multithreading in Cyclone - Grossman (2003)   (14 citations)  (Correct)

No context found.

D. Bacon, R. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, pages 382--400, Minneapolis, MN, Oct. 2000.


Safe Programming at the C Level of Abstraction - Grossman (2003)   (Correct)

No context found.

David Bacon, Robert Strom, and Ashis Tarafdar. Guava: A dialect of Java without data races. In ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, pages 382--400, Minneapolis, MN, October 2000.


SafeJava: A Unified Type System for Safe Programming - Boyapati (2004)   (2 citations)  (Correct)

No context found.

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


SafeJava: A Unified Type System for Safe Programming - Boyapati (2004)   (2 citations)  (Correct)

No context found.

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Rigorous Concurrency Analysis of Multithreaded Programs - Yang, Gopalakrishnan.. (2003)   (Correct)

No context found.

David F. Bacon, Robert E. Strom, and Ashis Tarafdar. Guava: a dialect of Java without data races. In Proceedings of Object-Oriented Programming Systems, Lanuages, and Applications, 2000.


ACM Conference on Object-Oriented Programming, Systems.. - Parameterized Type..   (Correct)

No context found.

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


ACM Conference on Object-Oriented Programming, Systems.. - Parameterized Type..   (Correct)

No context found.

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.


Safe Runtime Downcasts With Ownership Types Chandrasekhar .. - Laboratory For Computer   (Correct)

No context found.

D. F. Bacon, R. E. Strom, and A. Tarafdar. Guava: A dialect of Java without data races. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2000.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC