Home

Selected Papers

More details about the projects described in these papers can be found from either the Secure Software Systems (S3) or Parallel and Distributed Systems Laboratory home pages.

2006
  1. Improving Duplicate Elimination in Storage Systems, ACM Transactions on Storage (to appear) (with D. Bobbarjung and C. Dubnicki).
  2. Stabilizers: A Modular Checkpointing Abstraction for Concurrent Functional Programs, ACM International Conference on Functional Programming, September 2006. (with L. Ziarek and P. Schatz).
  3. Sieve: A Tool for Automatically Detecting Variations Across Program Versions, IEEE Automated Software Engineering Conference, September 2006. (with M. Ramanathan and A. Grama).
  4. Transparently Reconciling Transactions with Locking for Java Synchronization, European Conference on Object-Oriented Programming (ECOOP), July 2006. (with A. Welc and A. Hosking).
  5. Trace-based Memory Aliasing Across Program Versions, Fundamental Approaches to Software Engineering, March 2006. (with M. Ramanathan and A. Grama).
  6. Revocation Techniques for Java Concurrency, Concurrency: Practice and Experience, (published online, January 2006). (with A. Welc and A. Hosking).
  7. Dynamic State Restoration Using Versioning Exceptions, Higher-Order Symbolic Computation, January 2006. (with N.V. Krishna).
  8. Unstructured Peer-to-Peer Networks for Sharing Processor Cycles, Parallel Computing, January 2006. (with A. Awan, R. Ferreira, and A. Grama).
  9. Locality in Structured Peer-to-Peer Networks, Journal of Parallel and Distributed Computing, January 2006. (with R. Ferreria and A. Grama).
2005
  1. Preemptible Atomic Regions for Real-time Java, IEEE Real-time Systems Symposium, December 2005. (with J. Manson, J. Baker, A. Cunei, M. Prochazka, B. Xin, and J. Vitek).
  2. Safe Futures for Java, ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2005. (with A. Welc and A. Hosking).
  3. Randomized Protocols for Duplicate Elimination in Peer-to-Peer Storage Systems, IEEE 5th International Conference on Peer-to-Peer Systems, September 2005. (with R. Ferreira, M. Ramanathan, and A. Grama).
  4. Search with Probablistic Guarantees in Unstructured Peer-to-Peer Networks IEEE 5th International Conference on Peer-to-Peer Systems, September 2005. (with R. Ferreira, A. Awan, M. Ramanathan, and A. Grama).
  5. A Transactional Object Calculus, Science of Computer Programming, August 2005. (with J. Vitek, A. Welc, and A. Hosking).
  6. VI-Attached Database Storage , IEEE Transactions on Parallel and Distributed Systems, January 2005. (with Y.Zhou, A.Bilas, D. Xinidis, and K. Li).
2004
  1. Plethora: An Efficient Wide-Area Storage Systems, High-Performance Computing, December 2004. (with R. Ferreria, and A. Grama).
  2. Preemption-Based Avoidance of Priority Inversion for Java, International Conference on Parallel Processing, August 2004. (with A. Welc and A. Hosking).
  3. A Locality-Enhancing Peer-to-Peer Network, IEEE International Conference on Parallel and Distributed Systems, July 2004, (with R. Ferreria and A. Grama).
  4. Transactional Monitors for Concurrent Objects, European Conference on Object-Oriented Programming, June 2004. (with A. Welc and A. Hosking).
  5. A Semantic Framework for Designer Transactions, European Symposium on Programming, March 2004. (with A. Hosking, A. Welc, and J. Vitek).
  6. Optimistic Concurrency Semantics for Transactions in Coordination Langauges, Coordination: Languages and Models, February 2004. (with J. Vitek).
pre-2004
  1. Experiences with VI Communication for Database Storage, International Symposium on Computer Architecture, June 2002 (with Y. Zhou, A. Bilas, C. Dubnicki, K. Li, and J. Philbin)
  2. Concurrency Analysis for Java, International Static Analysis Symposium, July 2000. (with C. Ungureanu).
  3. Continuation-based Transformations for Coordination Languages, Theoretical Computer Science, July 2000.
  4. Flow-Directed Closure Conversion for Typed Languages. European Symposium on Programming, March 2000. (with H. Cejtin and S. Weeks).
  5. Transparent Communication for Distributed Objects in Java. Java Grande'99. (with M. Hicks, R. Kelsey, J. Moore, and C. Ungureanu.)
  6. Compiling Java to a Typed Intermediate Language: A Preliminary Report. Types in Compilation, 1998. (with A. Wright, C. Ungureanu, and A. Hertzmann).
  7. Polymorphic Splitting: An Effective Polyvariant Flow Analysis. ACM Transactions on Programming Languages and Systems, March 1998. (with A. Wright).
  8. Single and Loving It: Must-Alias Analysis for Higher-Order Languages. ACM Symposium on Principles of Programming Languages. January 1998. ACM Press. (with P. Thiemann, S. Weeks, and A. Wright).
  9. Communication-Passing Style for Coordination Languages. 2nd International Conference on Coordination Models and Languages. September 1997.
  10. Type-Directed Flow Analysis for Typed Intermediate Languages. 4th International Static Analysis Symposium. September 1997. (with S. Weeks and A. Wright).
  11. Higher-Order Distributed Objects. ACM Transactions on Programming Languages and Systems. September 1995. (with H. Cejtin and R. Kelsey).
  12. Flow-Directed Inlining. ACM Symposium on Programming Language Design and Implementation. May 1996. (with A. Wright).
  13. Effective Flow Analysis for Avoiding Runtime Checks. 2nd International Static Analysis Symposium. September 1995. (with A. Wright).
  14. A Unified Treatment of Flow Analysis in Higher-Order Languages, ACM Symposium on Principles of Programming Languages, January 1995. ACM Press. (with S. Weeks).
  15. A Concurrent Abstract Interpreter. Lisp and Symbolic Computation. April 1994. (with Stephen Weeks and James Philbin).
  16. Analyzing Stores and References in Parallel Symbolic Languages, ACM Symposium on Lisp and Functional Programming, June 1994. (with S. Weeks).