An Improved Replacement Strategy for Function Aaching. - William W. Pugh (LISP and Functional Programming, 1988)

Incremental Computation and the Incremental Evaluation of Functional Programs. - William W. Pugh (1988)

Incremental Computation via Function Caching. - William W. Pugh; Tim Teitelbaum (POPL, 1989)

Probabilistic Analysis of Set Operations with Constant-Time Set Equality Test. - William W. Pugh (ICCI, 1990)

Two-Directional Record Layout for Multiple Inheritance. - William W. Pugh; Grant E. Weddell (PLDI, 1990)

Skip Lists: A Probabilistic Alternative to Balanced Trees. - William W. Pugh (Commun. ACM, 1990)

Slow Optimally Balanced Search Strategies VS. Cached Fast Uniformly Balanced Search Strategies. - William W. Pugh (Inf. Process. Lett., 1990)

Uniform techniques for loop optimization. - William W. Pugh (ICS, 1991)

Advice to Authors of Extended Abstracts. - William W. Pugh (PLDI, 1991)

The Omega test: a fast and practical integer programming algorithm for dependence analysis. - William W. Pugh (SC, 1991)

Eliminating False Data Dependences using the Omega Test. - William W. Pugh; David Wonnacott (PLDI, 1992)

Partial Evaluation of High-Level Imperative Programming Languages, with Applications in Hard Real-Time Systems. - Vivek Nirkhe; William W. Pugh (POPL, 1992)

A Practical Algorithm for Exact Array Dependence Analysis. - William W. Pugh (Commun. ACM, 1992)

Definitions of Dependence Distance. - William W. Pugh (LOPLAS, 1992)

An Exact Method for Analysis of Value-based Array Data Dependences. - William W. Pugh; David Wonnacott (LCPC, 1993)

A Partial Evaluator for the Maruti Hard Real-Time System. - Vivek Nirkhe; William W. Pugh (Real Time Syst., 1993)

Simplifying Polynominal Constraints Over Integers to Make Dependence Analysis More Precise. - Vadim Maslov; William W. Pugh (CONPAR, 1994)

Finding Legal Reordering Transformations Using Mappings. - Wayne Kelly; William W. Pugh (LCPC, 1994)

Counting Solutions to Presburger Formulas: How and Why. - William W. Pugh (PLDI, 1994)

Experiences with Constraint-based Array Dependence Analysis. - William W. Pugh; David Wonnacott (PPCP, 1994)

Parallel finite automata for modeling concurrent software systems. - P. David Stotts; William W. Pugh (J. Syst. Softw., 1994)

Selecting Affine Mappings Based on Performance Estimation. - Wayne Kelly; William W. Pugh (Parallel Process. Lett., 1994)

Static Analysis of Upper and Lower Bounds on Dependences and Parallelism. - William W. Pugh; David Wonnacott (ACM Trans. Program. Lang. Syst., 1994)

Non-Linear Array Dependence Analysis. - William W. Pugh; David Wonnacott (LCR, 1995)

Broadband access: comparing alternatives. - William W. Pugh; Gerald Boyer (IEEE Commun. Mag., 1995)

Using affine closure to find legal reordering transformations. - Wayne Kelly; William W. Pugh (Int. J. Parallel Program., 1995)

Parametric Dispatching of Hard Real-Time Tasks. - Richard Gerber 001; William W. Pugh; Manas Saksena (IEEE Trans. Computers, 1995)

Going Beyond Integer Programming with the Omega Test to Eliminate False Data Dependences. - William W. Pugh; David Wonnacott (IEEE Trans. Parallel Distributed Syst., 1995)

Minimizing Communication While Preserving Parallelism. - Wayne Kelly; William W. Pugh (International Conference on Supercomputing, 1996)

Exploiting Monotone Convergence Functions in Parallel Programs. - William W. Pugh; Evan Rosser; Tatiana Shpeisman (LCPC, 1996)

Transitive Closure of Infinite Graphs and its Applications. - Wayne Kelly; William W. Pugh; Evan Rosser; Tatiana Shpeisman (Int. J. Parallel Program., 1996)

Efficient Distribution Analysis via Graph Contraction. - Thomas J. Sheffler; Robert Schreiber; William W. Pugh; John R. Gilbert; Siddhartha Chatterjee (Int. J. Parallel Program., 1996)

Finding the ith largest of n for small i, n. - William I. Gasarch; Wayne Kelly; William W. Pugh (SIGACT News, 1996)

Symbolic Model Checking of Infinite State Systems Using Presburger Arithmetic. - Tevfik Bultan; Richard Gerber 001; William W. Pugh (CAV, 1997)

Iteration Space Slicing and Its Application to Communication Optimization. - William W. Pugh; Evan Rosser (International Conference on Supercomputing, 1997)

SIPR: A New Framework for Generating Efficient Code for Sparse Matrix Computations. - William W. Pugh; Tatiana Shpeisman (LCPC, 1998)

Constraint-Based Array Dependence Analysis. - William W. Pugh; David Wonnacott (ACM Trans. Program. Lang. Syst., 1998)

Fixing the Java Memory Model. - William W. Pugh (Java Grande, 1999)

Iteration Space Slicing for Locality. - William W. Pugh; Evan Rosser (LCPC, 1999)

Compressing Java Class Files. - William W. Pugh (PLDI, 1999)

Model-checking concurrent systems with unbounded integer variables: symbolic representations, approximations, and experimental results. - Tevfik Bultan; Richard Gerber 001; William W. Pugh (ACM Trans. Program. Lang. Syst., 1999)

The Java memory model is fatally flawed. - William W. Pugh (Concurr. Pract. Exp., 2000)

Core semantics of multithreaded Java. - Jeremy Manson; William W. Pugh (Java Grande, 2001)

More Efficient Network Class Loading Through Bundling. - David Hovemeyer; William W. Pugh (Java Virtual Machine Research and Technology Symposium, 2001)

Atomic Instructions in Java. - David Hovemeyer; William W. Pugh; Jaime Spacco (ECOOP, 2002)

Evaluating the Impact of Programming Language Features on the Performance of Parallel Applications on Cluster Architectures. - Konstantin Berlin; Jun Huan; Mary Jacob; Garima Kochhar; Jan F. Prins; William W. Pugh; P. Sadayappan; Jaime Spacco; Chau-Wen Tseng (LCPC, 2003)

MPJava: High-Performance Message Passing in Java Using Java.nio. - William W. Pugh; Jaime Spacco (LCPC, 2003)

An Eclipse-based course project snapshot and submission system. - Jaime Spacco; David Hovemeyer; William W. Pugh (eTX, 2004)

Finding bugs is easy. - David Hovemeyer; William W. Pugh (ACM SIGPLAN Notices, 2004)

Keynote talk: Advice to bug hunters. - William W. Pugh (AADEBUG, 2005)

Evaluating and tuning a static analysis to find null pointer bugs. - David Hovemeyer; Jaime Spacco; William W. Pugh (PASTE, 2005)

The Java memory model. - Jeremy Manson; William W. Pugh; Sarita V. Adve (POPL, 2005)

Software repository mining with Marmoset: an automated programming project snapshot and testing system. - Jaime Spacco; Jaymie Strecker; David Hovemeyer; William W. Pugh (ACM SIGSOFT Softw. Eng. Notes, 2005)

RUBiS Revisited: Why J2EE Benchmarking is Hard. - Jaime Spacco; William W. Pugh (Stud. Inform. Univ., 2005)

What do high-level memory models mean for transactions? - Dan Grossman; Jeremy Manson; William W. Pugh (Memory System Performance and Correctness, 2006)

Experiences with marmoset: designing and using an advanced submission and testing system for programming courses. - Jaime Spacco; David Hovemeyer; William W. Pugh; Fawzi Emad; Jeffrey K. Hollingsworth; Nelson Padua-Perez (ITiCSE, 2006)

Tracking defect warnings across versions. - Jaime Spacco; David Hovemeyer; William W. Pugh (MSR, 2006)

Improving your software using static analysis to find bugs. - Brian Cole; Daniel Hakim; David Hovemeyer; Reuven Lazarus; William W. Pugh; Kristin Stephens (OOPSLA Companion, 2006)

Helping students appreciate test-driven development (TDD). - Jaime Spacco; William W. Pugh (OOPSLA Companion, 2006)

The Marmoset project: an automated snapshot, submission, and testing system. - Jaime Spacco; William W. Pugh; Nathaniel Ayewah; David Hovemeyer (OOPSLA Companion, 2006)

Unit testing concurrent software. - William W. Pugh; Nathaniel Ayewah (ASE, 2007)

Using FindBugs on production software. - Nathaniel Ayewah; William W. Pugh; J. David Morgenthaler; John Penix; YuQian Zhou (OOPSLA Companion, 2007)

Status report on JSR-305: annotations for software defect detection. - David Hovemeyer; William W. Pugh (OOPSLA Companion, 2007)

Finding bugs in eclipse. - William W. Pugh (OOPSLA Companion, 2007)

Evaluating static analysis defect warnings on production software. - Nathaniel Ayewah; William W. Pugh; J. David Morgenthaler; John Penix; YuQian Zhou (PASTE, 2007)

Improving software quality with static analysis. - Jeffrey S. Foster; Michael W. Hicks; William W. Pugh (PASTE, 2007)

Finding more null pointer bugs, but not too many. - David Hovemeyer; William W. Pugh (PASTE, 2007)

Multithreading in C and C++. - Hans Boehm; Bill Pugh; Doug Lea (login Usenix Mag., 2007)

A report on a survey and study of static analysis users. - Nathaniel Ayewah; William W. Pugh (DEFECTS, 2008)

Using Static Analysis to Find Bugs. - Nathaniel Ayewah; David Hovemeyer; J. David Morgenthaler; John Penix; William W. Pugh (IEEE Softw., 2008)

Two-dimensional bidirectional object layout. - Joseph Gil; William W. Pugh; Grant E. Weddell; Yoav Zibin (ACM Trans. Program. Lang. Syst., 2008)

Learning from defect removals. - Nathaniel Ayewah; William W. Pugh (MSR, 2009)

The Google FindBugs fixit. - Nathaniel Ayewah; William W. Pugh (ISSTA, 2010)

Null dereference analysis in practice. - Nathaniel Ayewah; William W. Pugh (PASTE, 2010)

Static Analysis in Motion. - Brian Chess; Kris Britton; Chris Eng; Bill Pugh; Lakshmikanth Raghavan; Jacob West (IEEE Secur. Priv., 2012)