Anil Madhavapeddy
banner
anil.recoil.org
Anil Madhavapeddy
@anil.recoil.org
Professor of Planetary Computing at the University of Cambridge @cst.cam.ac.uk, where I co-lead the @eeg.cl.cam.ac.uk and work on computing for global biodiversity and climate change with @conservation.cam.ac.uk.

Homepage at https://anil.recoil.org
Pinned
I've also started the refresh cycle for Real World OCaml v3 w/ @yminsky.bsky.social in preparation for being on a sabbatical year in 2025! What would you all like to read more about in the latest OCaml 5 goodies? (aside from parallelism; there'll be lots about parallelism.)
Wrapping up my advent of agentic humps by building tuatara: a self-mutating Atom aggregator that can invoke Claude to alter its own OCaml code if it runs into errors. Medice, cura te ipsum, and merry Christmas! anil.recoil.org/notes/aoah-2...
AoAH Day 24: Tuatara, an evolving Atom aggregator that mutates
Tuatara is a feed aggregator that integrates Claude to evolve and patch its own code when encountering parsing errors, embodying the concept of self-healing software.
anil.recoil.org
December 25, 2025 at 12:03 PM
I've built "unpac" today to make it possible to vendor _all_ OCaml package dependencies in a single git repo, using 100s of orphan branches and git worktrees. This makes agentic programming way more reliable as the agent has access to all the OCaml/OxCaml code. anil.recoil.org/notes/aoah-2...
AoAH Day 23: Unpac unifies git branching with package management
Introducing unpac, a tool that unifies git and package management into a single workflow where all code dependencies live in one repository as trackable branches.
anil.recoil.org
December 24, 2025 at 9:34 PM
Reposted by Anil Madhavapeddy
Experts are celebrating the rise in the population of one of England’s rarest bumblebees. bee Recordings of the shrill carder bee have occurred over two consecutive years after more than a decade with no sightings.

📷 Bumblebee Conservation Trust
Read more: https://ow.ly/JnQp50XwRwJ
December 24, 2025 at 3:20 PM
Reposted by Anil Madhavapeddy
I think this is far enough along to post about now

pegasus, a pds implementation in ocaml, ~feature parity with the bluesky pds (minus app passwords because those are gross)

repo includes various other atproto-relevant libraries in ocaml for interested sickos

tangled.org/futur.blue/p...
futur.blue/pegasus
objective categorical abstract machine language personal data server
tangled.org
December 22, 2025 at 7:12 PM
Days 20/21 of AoAH had me vibespiling the complete HTML5 conformance checker and ngram language detector into OCaml from Java. Thousands of rules now in pure OCaml, and also run in the browser via wasm to dynamically check HTML5! anil.recoil.org/notes/aoah-2...
AoAH Day 21: Complete dynamic HTML5 validation in OCaml and the browser
Porting the W3C's Nu HTML Validator from Java to OCaml and running in the browser dynamically
anil.recoil.org
December 22, 2025 at 3:53 PM
Reposted by Anil Madhavapeddy
🗞️ Great news!

A golden eagle has been spotted in northern England for the first time since 2015. Scientists working in the area report multiple sightings since April 2025.

Read more in Mongabay: https://ow.ly/eFb450XAvyN
December 20, 2025 at 4:45 PM
Good news: We're generating ~3TB of earth embeddings from 2017-2024 for TESSERA daily now. Bad news: I'm the storage sysadmin ucam-eo.github.io/tessera-cove...
GeoTessera Globe Visualization
ucam-eo.github.io
December 20, 2025 at 1:43 PM
Thing is, the ACM will _never_ win on this front; the tech giants have advertising sewn up. They need to be spending the time brainstorming about actual winning strategies to save computer *science*.

sense-making.leaflet.pub/3mabfmkkemc2...
Thoughts on "Dear ACM, you're doing AI wrong but you can still get it right" - Sense making
sense-making.leaflet.pub
December 18, 2025 at 5:29 PM
Day 17 of AoAH and I'm coding up bespoke email JMAP agents in OCaml that can spider around marking stuff as read so I don't have to. Starting to lose control of the personal agentic situation now... anil.recoil.org/notes/aoah-2...
AoAH Day 17: OCaml JMAP to plaster my painful email papercuts
Building an OCaml JMAP client that runs in browsers and CLI, then using it to build personalised email workflows for taming notification overload.
anil.recoil.org
December 18, 2025 at 5:22 PM
There has been outrage as the @acm.org rolls out AI generated summaries of papers. This is doing AI exactly wrong by replacing valuable, peer-reviewed content with a possibly inaccurate summary. It's still not too late to correct it though and use AI responsibly... anil.recoil.org/notes/acm-ai...
Dear ACM, you're doing AI wrong but you can still get it right
anil.recoil.org
December 18, 2025 at 1:30 PM
Generating standalone OCaml executable tutorials that run in the browser for protocols I'm exploring, aka "vibesplaining" in today's Day 16 Advent of Agentic Humps post anil.recoil.org/notes/aoah-2...
AoAH Day 16: Vibesplaining JSON Pointers using OCaml/Javascript
Building interactive OCaml tutorials that compile to JavaScript, using agents to generate executable documentation that teaches protocols like JSON Pointer while you code review.
anil.recoil.org
December 17, 2025 at 4:42 PM
Reposted by Anil Madhavapeddy
Really enjoyed this piece by @anil.recoil.org , & great to see more recognition of the potential of ATProto for science! @atproto.science

anil.recoil.org/notes/princi...
December 16, 2025 at 9:32 PM
Reposted by Anil Madhavapeddy
In short: The AT microblogsphere (Bluesky, Blacksky, Northsky, Gander..) provide an outstanding meta-platform for blog comments, and passing on that integration is a waste of interop magic
December 17, 2025 at 8:12 AM
And it took less than a day to go the other direction and get a _typed_ pure OCaml HTML5 library anil.recoil.org/notes/aoah-2...
December 16, 2025 at 5:15 PM
The Reith lectures are wonderful this year; "A conspiracy of decency" had robust Scottish audience participation that's a fascinating listen. www.bbc.co.uk/sounds/play/...
The Reith Lectures - Rutger Bregman - Moral Revolution - 3. A conspiracy of decency - BBC Sounds
Dutch historian Rutger Bregman gives the third of his 2025 BBC Reith Lectures.
www.bbc.co.uk
December 16, 2025 at 3:39 PM
For my last few days of my Advent of Agentic Humps, I blended 50 different language ecosystem's HTTP clients to brew an OCaml Requests library. Agents figured out the random quirks needed for a client by getting advice from our friends in Java, Haskell, C, C#, Python anil.recoil.org/notes/aoah-2...
AoAH Day 13: Heckling an OCaml HTTP client from 50 implementations in 10 languages
Agentically synthesising a batteries-included OCaml HTTP client by gathering recommendations from fifty open-source implementations across JavaScript, Python, Java, Rust, Swift, Haskell, Go, C++, PHP ...
anil.recoil.org
December 14, 2025 at 5:23 PM
Advent of Agentic Humps day 11: built a Claude skill to digest whole Internet RFCs and synthesise libraries for HTTP cookies, Public Suffix lists and Punycode. A triple library bonanza day! anil.recoil.org/notes/aoah-2...
AoAH Day 11: HTTP Cookies and vibing RFCs for breakfast
Synthesizing three RFC-compliant libraries (punycode, public-suffix, and cookeio) directly from Internet RFC specifications, establishing a workflow for automating standards implementation with proper...
anil.recoil.org
December 11, 2025 at 8:26 PM
I figured I'd try to get a proper handle on agentic programming with my 2025 Advent of Agentic Humps: building a new useful O(x)Caml library every day this month. Some fun learnings already but I'll save my conclusions till the month is done! anil.recoil.org/notes/aoah-2...
2025 Advent of Agentic Humps: Building a useful O(x)Caml library every day
anil.recoil.org
December 10, 2025 at 4:53 PM
Reposted by Anil Madhavapeddy
www.youtube.com/live/tOMF69d... The Wild West of Post-POSIX IO Interfaces by @anil.recoil.org - This is the single best presentation for understanding modern operating systems and hardware. Ever.
[ICFP/SPLASH'25] Peony SE - VMIL (Oct 15th)
YouTube video by ACM SIGPLAN
www.youtube.com
December 7, 2025 at 8:15 AM
Hanging out with activist librarians is always fun, and the COAR Publish/Review/Curate meeting was productive anil.recoil.org/notes/coar-prc
Publish, Review, Curate to upend scholarly publishing
Report from a COAR conference on transforming scholarly publishing through the Publish, Review, Curate model, discussing diamond open access, early career challenges, and expanding open infrastructure...
anil.recoil.org
December 8, 2025 at 12:03 PM
Reposted by Anil Madhavapeddy
Want to discover and visualise the differences between two different machine learning models?

We will be presenting Neehar's work on "Representational Difference Explanations" at #NeurIPS2025 in San Diego from 4:30pm to 7:30pm PT today. Poster #1115.

Full paper:
arxiv.org/abs/2505.23917
Excited to share our paper Representational Difference Explanations (RDX) was accepted to #NeurIPS2025! 🎉RDX is a new method for model diffing designed to isolate 🔍 representational differences. 1/7
December 3, 2025 at 4:06 PM
Reposted by Anil Madhavapeddy
Welcome to the ✨For You✨ feed!

It finds people who liked the same posts as you, and shows you what else they've liked recently.

📌 Pin to add it to your top bar
❤️ Like the feed and repost to spread the goodness
August 3, 2025 at 2:16 AM
Switzerland now shipping Tessera embeddings! www.swissdatacube.org/index.php/20... -- but my oh my, we need to sort out versioning across all these so bad. Our first release is already escaping into the wild
Geoembeddings of Switzerland
The Swiss Data Cube team now provides access to annual geombeddings for Switzerland based on the Temporal Embeddings of Surface Spectra for Earth Representation and Analysis (TESSERA) foundation mo…
www.swissdatacube.org
December 3, 2025 at 5:53 PM
released py-geotessera 0.7.2 for our TESSERA geospatial foundation model, mainly a point release with Windows support (and working around some really weird parquet/floating point interactions on Windows I haven't quite figured out yet). Thanks @dra27.uk for the help! github.com/ucam-eo/geot...
Release WIndows fixes and more robust embeddings discovery · ucam-eo/geotessera
This release adds Windows platform support, more robust tolerance to interrupted scripts leaving temporary files around, and documentation fixes for coordinate printing and tile discovery. Windows ...
github.com
December 2, 2025 at 8:33 PM
Reposted by Anil Madhavapeddy
this fall I worked with the core Git folks on writing an official data model for Git and it just got merged! I learned a few new things from writing it. github.com/git/git/blob...
git/Documentation/gitdatamodel.adoc at master · git/git
Git Source Code Mirror - This is a publish-only repository but pull requests can be turned into patches to the mailing list via GitGitGadget (https://gitgitgadget.github.io/). Please follow Documen...
github.com
December 2, 2025 at 5:01 PM