This year, I have the honor of serving as the program chair for the Haskell Symposium, co-located with the 2026 International Conference on Functional Programming, or ICFP to its friends1, on August 28-29 in Indianapolis, Indiana! The Haskell Symposium has existed in some form or another since 1995, and I’m proud to be part of this long tradition, now in its thirtieth iteration this year (wow!).…
The newest zine from my research group, “Carol’s Causal Conundrum”, is out today! You can read it online, or print your own free copies to read offline ! This zine is an introduction to causally ordered message delivery , a fundamental abstraction for distributed programming. It’s the result of a six-month collaboration between my student collaborator, Ayush Manocha, and me. In the zine, we talk…
Last month, I was thrilled to have the chance to give a colloquium talk, “Interpreters everywhere!”, at the Indiana University Computer Science Colloquium! This talk wouldn’t exist if it weren’t for my amazing students. In fact, some parts of it are directly ripped off from talks that my students Gan Shen and Jonathan Castello have given previously on our work: check out Gan’s talk on HasChor from…
When did computer scientists start to talk about “simulation” between programs? As of a couple of months ago, the earliest paper I had seen on this topic was Robin Milner’s widely cited IJCAI 1971 paper, “An algebraic definition of simulation between programs” . (That’s the official publisher’s version, but this tech report version seems to have more readable typesetting.) 1 Recently, though, I…
Last week, I cleared everything else off my schedule to take the “Crusty Interpreter” course, an immersive 5-day “write an interpreter in Rust” course taught by Dave Beazley. I have a long history with Rust, but the language has moved on considerably from what I used to know. Worse, I’d barely written code in any language in years, except for a bit of Haskell for courses I teach and the occasional…
My research group has a new paper, “CRDT Emulation, Simulation, and Representation Independence”, appearing at ICFP this year! This project was headed up by my PhD student Nathan Liittschwager, with help from another PhD student in my group, Jonathan Castello, and our collaborator Stelios Tsampas. You can read our preprint (warts and all, but soon to be improved, thanks to feedback from the ICFP…
It’s finally done! 🎉 I am so excited to announce “Communicating Chorrectly with a Choreography”, the first zine from my research group. You can read it online, or print your own free copies to read offline ! Making research zines has been a dream of mine for a long time. Back in 2019, I experimented with zine creation as an optional assignment in my undergrad distributed systems class . In 2021,…
While getting ready to teach my grad distributed systems course this fall , I found myself once again flipping through Cheriton and Skeen’s rather scathing 1993 article “Understanding the limitations of causally and totally ordered communication” . 1 One of Cheriton and Skeen’s complaints about causally ordered communication is that it does not enforce the ordering constraints that they care…