Publications and Tech Reports

Nature-based credit markets at a crossroads
Tom Swinfield, Siddarth Shrikanth, Joseph Bull, Anil Madhavapeddy and Sophus zu Ermgassen.
Technical report in Cambridge Open Engage on Dec 2023.
Where on Earth is the Spatial Name System?
Ryan Gibb, Anil Madhavapeddy and Jon Crowcroft.
Workshop paper in the 22nd ACM Workshop on Hot Topics in Networks (HotNets-XXII) on Nov 2023 at Boston, Cambridge, MA, USA.
LIFE: A metric for quantitively mapping the impact of land-cover change on global extinctions
Alison Eyres, Thomas Ball, Michael Dales, Tom Swinfield, Andy Arnell, Daniele Baisero, América Paz Durán, Jonathan Green, Anil Madhavapeddy and Andrew Balmford.
Technical report in Cambridge Open Engage on Nov 2023.
Realising the social value of impermanent carbon credits
Andrew Balmford, Srinivasan Keshav, Frank Venmans, David Coomes, Ben Groom, Anil Madhavapeddy and Tom Swinfield.
Journal paper in Nature Climate Change on Oct 2023.
Information Flow Tracking for Heterogeneous Compartmentalized Software
Zahra Tarkhani and Anil Madhavapeddy.
Enabling Lightweight Privilege Separation in Applications with MicroGuards
Zahra Tarkhani and Anil Madhavapeddy.
PACT Tropical Moist Forest Accreditation Methodology
Andrew Balmford, David Coomes, Jamie Hartup, Sadiq Jaffer, Srinivasan Keshav, Miranda Lam, Anil Madhavapeddy, E-Ping Rau, Tom Swinfield and Charlotte Wheeler.
Technical report in Cambridge Open Engage on May 2023.
Carbon Credibility Threatens Forests
Andrew Balmford, Pedro HS Brancalion, David Coomes, Ben Filewod, Ben Groom, Alejandro Guizar-Coutiño, Julie PG Jones, Srinivasan Keshav, Andreas Kontoleon, Anil Madhavapeddy, Yadvinder Malhi, Erin O Sills, Bernardo BN Strassburg, Frank Venmans, Thales AP West, Charlotte Wheeler and Tom Swinfield.
Journal paper in Science (vol 380 issue 6644) on May 2023.
Real World OCaml: functional programming for the masses (2nd Ed)
Anil Madhavapeddy and Yaron Minsky.
Book (496 pages), Cambridge University Press Oct 2022 (2nd Edition).
Enhancing the security & privacy of wearable brain-computer interfaces
Zahra Tarkhani, Lorena Qendro, Malachy O'Connor Brown, Oscar Hill, Cecilia Mascolo and Anil Madhavapeddy.
Technical report in arXiv (2201.07711) on Jan 2022.
Retrofitting effect handlers onto OCaml
KC Sivaramakrishnan, Stephen Dolan, Leo White, Tom Kelly, Sadiq Jaffer and Anil Madhavapeddy.
How Computer Science Can Aid Forest Restoration
Gemma Gordon, Amelia Holcomb, Tom Kelly, Srinivasan Keshav, Jonathan Ludlam and Anil Madhavapeddy.
Technical report in arXiv (2109.07898) on Jun 2021.
Banyan: Coordination-Free Distributed Transactions over Mergeable Types
Shashank Shekhar Dubey, KC Sivaramakrishnan, Thomas Gazagnaire and Anil Madhavapeddy.
Retrofitting parallelism onto OCaml
KC Sivaramakrishnan, Stephen Dolan, Leo White, Sadiq Jaffer, Tom Kelly, Anmol Sahoo, Sudha Parimala, Atul Dhiman and Anil Madhavapeddy.
Conference paper in the 25th ACM SIGPLAN International Conference on Functional Programming (ICFP20) on Aug 2020. Awarded distinguished paper.
Snape: The Dark Art of Handling Heterogeneous Enclaves
Zahra Tarkhani, Anil Madhavapeddy and Richard Mortier.
A Modular Foreign Function Interface
Jeremy Yallop, David Sheets and Anil Madhavapeddy.
Bounding Data Races in Space and Time
Stephen Dolan, KC Sivaramakrishnan and Anil Madhavapeddy.
An Architecture for Interspatial Communication
Anil Madhavapeddy, KC Sivaramakrishnan, Gemma Gordon and Thomas Gazagnaire.
Concurrent System Programming with Effect Handlers
Stephen Dolan, Spiros Elipolous, Daniel Hillerström, Anil Madhavapeddy, KC Sivaramakrishnan and Leo White.
Workshop paper in the 18th Symposium on Trends in Functional Programming on Jun 2017 at Canterbury, United Kingdom.
Effectively Tackling the Awkward Squad
Stephen Dolan, Spiros Elipolous, Daniel Hillerström, Anil Madhavapeddy, KC Sivaramakrishnan and Leo White.
Workshop paper in the ACM ML Family Workshop 2017 on Jun 2017 at Oxford, United Kingdom.
DaLi: Database as a Library
Gowtham Kaki, KC Sivaramakrishnan, Thomas Gazagnaire, Anil Madhavapeddy and Suresh Jaganathan.
Workshop paper in the 2nd Summit on Advances in Programming Languages (SNAPL) on May 2017 at Asilomar, California, USA.
FLICK: Developing and Running Application-Specific Network Services
Abdul Alim, Richard Clegg, Luo Mai, Lukas Rupprecht, Eric Seckler, Paolo Costa, Peter Pietzuch, Alexander L Wolf, Nik Sultana, Jon Crowcroft, Anil Madhavapeddy, Andrew W. Moore, Richard Mortier, Masoud Koleni, Luis Oviedo, Matteo Miliavacca and Derek McCauley.
Conference paper in the 2016 USENIX Annual Technical Conference on Jun 2016 at Denver, USA.
Declarative foreign function binding through generic programming
Jeremy Yallop, David Sheets and Anil Madhavapeddy.
Conference paper in the 13th International Symposium on Functional and Logic Programming (FLOPS2016) on Mar 2016 at Kochi, Japan.
Personal Data: Thinking Inside the Box
Hamed Haddadi, Heidi Howard, Amir Chaudhry, Jon Crowcroft, Anil Madhavapeddy and Richard Mortier.
Conference paper in the Critical Alternatives 2015, the decennial Aarhus conference on Aug 2015 at Aarhus, Denmark.
Not-quite-so-broken TLS: lessons in re-engineering a security protocol specification and implementation
David Kaloper-Meršinjak, Hannes Menhert, Anil Madhavapeddy and Peter Sewell.
Conference paper in the 24th USENIX Security Symposium (UseSec15) on Aug 2015 at Washington DC, USA.
SibylFS: formal specification and oracle-based testing for POSIX and real-world file systems
Tom Ridge, David Sheets, Thomas Tuerk, Anil Madhavapeddy, Andrea Giugliano and Peter Sewell.
Conference paper in the 25th ACM Symposium on Operating Systems Principles (SOSP) on Aug 2015 at Monterey, California, USA.
Kadupul: Livin' on the Edge with Virtual Currencies and Time-Locked Puzzles
Magnus Skjegstad, Anil Madhavapeddy and Jon Crowcroft.
Conference paper in the DIY Networking Workshop at MobiSys 2015 on May 2015 at Florence, Italy.
Jitsu: Just-In-Time Summoning of Unikernels
Anil Madhavapeddy, Thomas Leonard, Magnus Skjegstad, Thomas Gazagnaire, David Sheets, David Scott, Richard Mortier, Amir Chaudhry, Balraj Singh, Jonathan Ludlam, Jon Crowcroft and Ian M. Leslie.
Conference paper in the 12th USENIX Symposium on Networked System Design and Implementation (NSDI 2015) on May 2015 at Oakland, California, USA.
Raft Refloated: Do We Have Consensus?
Heidi Howard, Malte Schwarzkopf, Anil Madhavapeddy and Jon Crowcroft.
Mergeable Persistent Data Structures
Benjamin Farinier, Thomas Gazagnaire and Anil Madhavapeddy.
Conference paper in the Vingt-sixièmes Journées Francophones des Langages Applicatifs (JFLA15) on Jan 2015 at Le Val d’Ajol, France.
Using Camera-phones to Interact with Context-aware Mobile Services
Eleanor Toye, Anil Madhavapeddy, Richard Sharp, David Scott, Alan Blackwell and Eben Upton.
Technical report in Computer Laboratory (UCAM-CL-TR-609) on Dec 2014.
Commercial Users of Functional Programming 2013 Scribe's Report
Marius Eriksen, Michael Sperber and Anil Madhavapeddy.
Journal paper in Journal of Functional Programming, volume 25 on Oct 2014.
Multicore OCaml
Stephen Dolan, Leo White and Anil Madhavapeddy.
Workshop paper in the the 4th ACM OCaml Users and Developers Workshop on Sep 2014 at Gothenberg, Sweden.
The OCaml Platform v1.0
Anil Madhavapeddy, Amir Chaudhry, Jeremie Dimino, Thomas Gazagnaire, Louis Gesbert, Thomas Leonard, David Sheets, Mark Shinwell, Leo White and Jeremy Yallop.
Workshop paper in the the 4th ACM OCaml Users and Developers Workshop on Sep 2014 at Gothenberg, Sweden.
Irminsule: a branch-consistent distributed library database
Thomas Gazagnaire, Amir Chaudhry, Anil Madhavapeddy, Richard Mortier, David Scott, David Sheets, Gregory Tsipenyuk and Jon Crowcroft.
Workshop paper in the the 4th ACM OCaml Users and Developers Workshop on Sep 2014 at Gothenberg, Sweden.
Unikernels: The Rise of the Virtual Library Operating System
Anil Madhavapeddy and David Scott.
Journal paper in Communications of the ACM on Jan 2014.
Commercial Users of Functional Programming 2012 Workshop Report
Michael Sperber and Anil Madhavapeddy.
Real World OCaml: functional programming for the masses (1st Ed)
Yaron Minsky, Anil Madhavapeddy and Jason Hickey.
Book (510 pages), O'Reilly Media Nov 2013 (1st Edition).
Trevi: Watering Down Storage Hotspots with Cool Fountain Codes
George Parisis, Toby Moncaster, Anil Madhavapeddy and Jon Crowcroft.
Workshop paper in the Twelfth ACM Workshop on Hot Topics in Networks (HotNets-XII) on Nov 2013 at College Park, Maryland, USA.
Perceived risks of personal data sharing
Anya Skatova, Jaspreet Johal, Robert Houghton, Richard Mortier, Neelam Bhandari, Tom Lodge, Christian Wagner, James Goulding, Jon Crowcroft and Anil Madhavapeddy.
Conference paper in the proceedings of the Digital Economy 2013 conference on Nov 2013 at Nottingham, UK.
The OCaml Platform v0.1
Anil Madhavapeddy, Amir Chaudhry, Thomas Gazagnaire, David Sheets, Phillipe Wang, Leo White and Jeremy Yallop.
Workshop paper in the the 2nd ACM OCaml Users and Developers Workshop on Sep 2013 at Boston, USA.
Lost In the Edge: Finding Your Way With Signposts
Charalampos Rotsos, Heidi Howard, David Sheets, Richard Mortier, Anil Madhavapeddy, Amir Chaudhry and Jon Crowcroft.
Workshop paper in the 3rd USENIX Workshop on Free and Open Communications on the Internet (FOCI 13) on Aug 2013 at Washington DC, USA.
Unikernels: Library Operating Systems for the Cloud
Anil Madhavapeddy, Richard Mortier, Charalampos Rotsos, David Scott, Balraj Singh, Thomas Gazagnaire, Steven Smith, Steven Hand and Jon Crowcroft.
Evolving TCP. How hard can it be?
Zubair Nabi, Toby Moncaster, Anil Madhavapeddy, Steven Hand and Jon Crowcroft.
Workshop paper in the CoNEXT 2012 Student Workshop on Dec 2012 at Nice, France.
Programming the Xen Cloud using OCaml
David Scott, Anil Madhavapeddy and Richard Mortier.
Workshop paper in the OCaml Users and Developers Workshop (OUD 2012) on Sep 2012 at Copenhagen, Denmark.
Exploring compartmentalisation hypotheses with SOAAP
Khilan Gudka, Robert M. Watson, Steven Hand, Ben Laurie and Anil Madhavapeddy.
Workshop paper in the Workshop on Adaptive Host and Network Security (AHANS 2012) on Sep 2012 at Lyon, France.
Signposts: End-to-end networking in World of Middleboxes
Andrius Aucinas, Amir Chaudhry, Jon Crowcroft, Sebastian Probst Eide, Steven Hand, Anil Madhavapeddy, Andrew W. Moore and Charalampos Rotsos.
Workshop paper in the proceedings of the SIGCOMM 2012 demo track on Aug 2012 at Helsinki, Finland.
Cost, performance & flexibility in OpenFlow: Pick three
Charalampos Rotsos, Richard Mortier, Anil Madhavapeddy, Balraj Singh and Andrew W. Moore.
Workshop paper in the proceedings of the IEEE Workshop on Software Defined Networks on Jun 2012 at Berlin, Germany.
Confidential Carbon Commuting: exploring a privacy architecture for incentivising "greener" commuting
Chris Elsmore, Anil Madhavapeddy, Ian M. Leslie and Amir Chaudhry.
Workshop paper in the proceedings of the 1st Measurement, Privacy, and Mobility (MPM 12) workshop on Apr 2012 at Bern, Switzerland.
The Case for Reconfigurable I/O Channels
Steven Smith, Anil Madhavapeddy, Christopher Smowton, Malte Schwarzkopf, Richard Mortier, Robert M. Watson and Steven Hand.
Workshop paper in the Runtime Environments, Systems, Layering and Virtualized Environments (RESoLVE'12) on Mar 2012 at London, United Kingdom.
Commercial Users of Functional Programming 2011 Workshop Report
Anil Madhavapeddy, Yaron Minsky and Marius Eriksen.
Dynamics for ML using Meta-Programming
Thomas Gazagnaire and Anil Madhavapeddy.
Reconfigurable Data Processing for Clouds
Anil Madhavapeddy and Satnam Singh.
CIEL: a universal execution engine for distributed data-flow computing
Derek Murray, Malte Schwarzkopf, Christopher Smowton, Steven Smith, Anil Madhavapeddy and Steven Hand.
Conference paper in the 8th USENIX Symposium on Networked System Design and Implementation (NSDI 2011) on Mar 2011 at Boston, USA.
Unclouded Vision
Jon Crowcroft, Anil Madhavapeddy, Malte Schwarzkopf, Theodore Hong and Richard Mortier.
Conference paper in the 12th International Conference on Distributed Computing and Networking (ICDCN11) on Jan 2011 at Bangalore, India.
The Personal Container, or Your Life in Bits
Richard Mortier, Chris Greenhalgh, Derek McCauley, Alexa Spence, Anil Madhavapeddy, Jon Crowcroft and Steven Hand.
Workshop paper in the proceedings of Digital Futures 2010 on Oct 2010 at Nottingham, United Kingdom.
Using Functional Programming within an Industrial Product Group: Perspectives and Perceptions
David Scott, Richard Sharp, Thomas Gazagnaire and Anil Madhavapeddy.
Conference paper in the 15th ACM SIGPLAN International Conference on Functional Programming (ICFP10) on Sep 2010 at Baltimore, USA.
Turning down the LAMP: Software Specialisation for the Cloud
Anil Madhavapeddy, Richard Mortier, Ripduman Sohan, Thomas Gazagnaire, Steven Hand, Tim Deegan, Derek McCauley and Jon Crowcroft.
Workshop paper in the 2nd USENIX Workshop on Hot Topics in Cloud Computing (HotCloud '10) on Jun 2010 at Boston, USA.
Multiscale not Multicore: Efficient Heterogeneous Cloud Computing
Anil Madhavapeddy, Richard Mortier, Jon Crowcroft and Steven Hand.
Conference paper in the ACM/BCS Visions of Computer Science on Apr 2010 at Edinburgh, United Kingdom.
Statically-typed value persistence for ML
Thomas Gazagnaire and Anil Madhavapeddy.
Workshop paper in the Workshop on Generative Technologies (WGT 2010) on Apr 2010 at Paphos, Cyprus.
Using Dust Clouds to Enhance Anonymous Communication
Richard Mortier, Anil Madhavapeddy, Theodore Hong, Derek Murray and Malte Schwarzkopf.
Workshop paper in the Eighteenth International Workshop on Security Protocols (IWSP 2010) on Apr 2010 at Cambridge, United Kingdom.
Privacy Butler: A Personal Privacy Rights Manager for Online Presence
Ryan Wishart, Dominic Corapi, Anil Madhavapeddy and Morris Sloman.
Workshop paper in the IEEE International Workshop on Smart Environments (SmartE 2010) on Mar 2010 at Mannheim, Germany.
Combining Static Model Checking with Dynamic Enforcement using the Statecall Policy Language
Anil Madhavapeddy
Conference paper in the 11th International Conference on Formal Engineering Methods (ICFEM) on Dec 2009 at Rio de Janeiro, Brazil.
Enhancing Web Browsing Security on Public Terminals Using Mobile Composition
Richard Sharp, Anil Madhavapeddy, Roy Want and Trevor Pering.
Conference paper in the Sixth International Conference on Mobile Systems, Applications and Services on Jun 2008 at Breckenridge, Colorado.
Creating High-Performance, Statically Type-Safe Network Applications
Anil Madhavapeddy
Book (180 pages), UCAM-CL-TR-775 Jun 2007 (PhD thesis). Nominated for the BCS Distinguished Dissertation Award.
Melange: creating a "functional" Internet
Anil Madhavapeddy, Alex Ho, Tim Deegan, David Scott and Ripduman Sohan.
Conference paper in the ACM SIGOPS Operating Systems Review (volume 14, issue 3, EuroSys) on Mar 2007 at Lisbon, Portugal. EuroSys 2007 Best Student Paper award.
Interacting with Mobile Services: An Evaluation of Camera-Phones and Visual Tags
Eleanor Toye, Richard Sharp, Anil Madhavapeddy, David Scott, Eben Upton and Alan Blackwell.
A Study of Bluetooth Propagation using Accurate Indoor Location Mapping
Anil Madhavapeddy and Alastair Tse.
Conference paper in the proceedings of The Seventh International Conference on Ubiquitous Computing on Sep 2005 at Tokyo, Japan.
SPLAT: A Tool for Model-Checking and Dynamically Enforcing Abstractions
Anil Madhavapeddy, David Scott and Richard Sharp.
The Broadband Phone Network: Experiences with Context-Aware Telephony
Ripduman Sohan, Alastair Tse and Anil Madhavapeddy.
On the Challenge of Delivering High-Performance, Dependable, Model-Checked Internet Servers
Anil Madhavapeddy and David Scott.
Workshop paper in the proceedings of the First Workshop on Hot Topics in System Dependability (HotDep) on Jun 2005 at Yokohama, Japan.
Audio Networking: The Forgotten Wireless Technology
Anil Madhavapeddy, Richard Sharp, David Scott and Alastair Tse.
Ubiquitous Computing needs to catch up with Ubiquitous Media
Anil Madhavapeddy and Nick Ludlam.
Workshop paper in the proceedings of the Pervasive 2005 UbiApps workshop on May 2005 at Munich, Germany.
Using Smart Phones to Access Site-Specific Services
Eleanor Toye, Richard Sharp, Anil Madhavapeddy and David Scott.
Using Visual Tags to Bypass Bluetooth Device Discovery
David Scott, Richard Sharp, Anil Madhavapeddy and Eben Upton.
Using Camera-Phones to Enhance Human-Computer Interaction
Anil Madhavapeddy, David Scott, Richard Sharp and Eben Upton.
Conference paper in the adjunct proceedings of The Sixth International Conference on Ubiquitous Computing on Sep 2004 at Nottingham, UK.
Feedback, Latency, Accuracy: Exploring Tradeoffs in Location-Aware Gaming
Kieran Mansley, David Scott, Alastair Tse and Anil Madhavapeddy.
Conference paper in the proceedings of the ACM SIGCOMM 2004 Workshop on NetGames on Aug 2004 at Oregon, USA.
Context-aware Computing with Sound
Anil Madhavapeddy, David Scott and Richard Sharp.
Conference paper in the proceedings of the Fifth International Conference on Ubiquitous Computing on Aug 2003 at Seattle, USA.
The Case for Abstracting Security Policies
Anil Madhavapeddy, Alan Mycroft, David Scott and Richard Sharp.
Conference paper in the 2003 International Conference on Security and Management on Jun 2003 at Las Vegas, USA.
Xen 2002
Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Evangelos Kotsovinos, Anil Madhavapeddy, Rolf Neugebauer, Ian Pratt and Andrew Warfield.