.plan-26-41: Hello, is it Part II you're looking for?

The Foundations of Computer Science notes are now done as a Forest with live OCaml toplevels, and Part II projects sorted.

https://anil.recoil.org/notes/2026w41image

Start of term is truly crazy around here, so I'll save longer form thoughts for later in the month when things calm down a little.

Most of my focus was on teaching and administration to prepare for the term. I finished the Cambridge 1A Foundations of Computer Science course notes as a Forest, complete with live in-browser OCaml toplevels. These are now on the course webpage and ready for lectures next week. This may well be the last time this course (now about three decades old) runs in its current form, so I'm a little nostalgic heading into delivering it!

1 CST Part II projects this year

There is a traditional crush of emails this week every year since the returning third year CST students all have to find projects and propose them in the first week of term. There's no 'clearing service' coordination here, so I usually get around forty requests for meetings. This year will see some particularly diverse and fun projects; I'm glad to see the spirit of computing exploration is still alive and kicking with our undergrads!

Next week is all about responding to the MPhil students and Part IIIs for their (longer form) projects. Fun times!

2 Back to the Cambridge community

We had the annual Discover the Conservation Research Institute event, with a completely packed room of new faces and familiar ones. Absolutely delightful atmosphere all around.

A packed Discover CRI!
A packed Discover CRI!

This was then followed by the usual three-minute group pitches by everyone, so I grabbed a couple of candid camera shots.

Andrew Balmford advertises the upcoming Student Conference in Conservation Science
Andrew Balmford advertises the upcoming Student Conference in Conservation Science
David Coomes explains the Centre for Landscape Regeneration
David Coomes explains the Centre for Landscape Regeneration

I also had the pleasure of the matriculation dinner for the Pembroke College undergraduates, welcoming our four new arrivals with the traditional selfie. This was followed by a day of Director of Studies meetings with the full cohort to make sure all their projects and supervisions were in order.

Welcome Pembroke freshers!
Welcome Pembroke freshers!

And after that, it was over to the Computer Science department for our faculty meetings, which I am now attending again as sabbatical is over!

The Computer Lab faculty assembles
The Computer Lab faculty assembles

3 OCaml's module language

I also snatched a few minutes to jot down my thoughts on why OCaml's module language is a great fit for agentic programming. This is really just an explainer of the interface/implementation split that OCaml has supported for 25+ years, but the post was quite widely read by a new audience who are now using coding assistants and so switching between languages at a rapid pace.

References

[1]Madhavapeddy (2025). Foundations of Computer Science. 10.59350/qms3q-ymn65
[2]Madhavapeddy (2026). OCaml's module language is the perfect fit for agentic programming. 10.59350/g6hbj-qmc76
[3]Madhavapeddy (2025). It's time to go post-POSIX at ICFP/SPLASH 2025. 10.59350/mch1m-8a030
[4]Madhavapeddy (2026). Using Forester to turn Foundations of CS into interactive evergreen lectures. 10.59350/sjcvd-hb857