| 2008 | PLDI | SharC: checking data sharing strategies for multithreaded C. | Zachary R. Anderson, David Gay, Robert Ennals, Eric A. Brewer |
| 2007 | ESOP | Multi-language Synchronization. | Robert Ennals, David Gay |
| 2007 | HotOS | Beyond Bug-Finding: Sound Program Analysis for Linux. | Zachary R. Anderson, Eric A. Brewer, Jeremy Condit, Robert Ennals, David Gay, Matthew Harren, George C. Necula, Feng Zhou |
| 2007 | ICFP | User-friendly functional programming for web mashups. | Robert Ennals, David Gay |
| 2007 | SIGMOD | MashMaker: mashups for the masses. | Robert Ennals, Minos N. Garofalakis |
| 2006 | OSDI | SafeDrive: Safe and Recoverable Extensions Using Language-Based Techniques. | Feng Zhou, Jeremy Condit, Zachary R. Anderson, Ilya Bagrak, Robert Ennals, Matthew Harren, George C. Necula, Eric A. Brewer |
| 2005 | CC | Task Partitioning for Multi-core Network Processors. | Robert Ennals, Richard Sharp, Alan Mycroft |
| 2004 | ESOP | Linear Types for Packet Processing. | Robert Ennals, Richard Sharp, Alan Mycroft |
| 2003 | HASKELL | HsDebug: debugging lazy programs by not being lazy. | Robert Ennals, Simon L. Peyton Jones |
| 2003 | ICFP | Optimistic evaluation: an adaptive evaluation strategy for non-strict programs. | Robert Ennals, Simon L. Peyton Jones |
| 1998 | ICFP | Controlled Temporal Non-Determinism for Reasoning with a Machine of Finite Speed. | Robert Ennals |
| 1998 | ICFP | Verbose Typing. | Robert Ennals |