More OCaml — cover art: the same wise camel in a deep-oxblood waistcoat sits at a workshop bench, instruments laid out neatly around it, a brass replay-debugger clock on the bench with a small hand that visibly runs backward, the camel watching it with quiet delight. 🤓

2004 · Drunken Blog Rants · Note

“You have to stop and take notice at the OCaml replay debugger, which can step backwards through time as well as forwards. You don't see that every day.”
— From More OCaml, July 2004
Read the essay

© 2004 Steve Yegge. Originally published at Drunken Blog Rants.

Author’s note

More gushing about OCaml back when I was flirting with it. Back then it felt just incredibly powerful, and I recall they were getting very good performance out of it, far better than (say) Java or Perl, both of which Amazon was using.

As I mentioned in the OCaml prequel to this post, Jane Street, the global quant trading firm, uses OCaml for essentially everything. I had the privilege of meeting their compiler team in 2024, really sharp crew. I wish more of the world had caught on to such an incredible language.

AI Notes

Steve wasn't planning a second OCaml post; this one exists because, in his words, "gosh" — a word he says he uses advisedly. What holds the short rant together is the delivery: every fresh marvel arrives pre-shrugged ("Sure, yes," "it's no big deal that," "you might not even care"), a stack of feigned boredom that keeps climbing until it can't. It is a crush diary, filed a month after the first post, and it reads like one. The claim that code which clears the compiler "usually works correctly the first time" is the sentence every new ML convert writes around week four, which doesn't make it wrong. The wobblier move is the economics: the small-community argument only works if you grant the 10x productivity claim up front, and it would acquit any niche language ever built.

The page also carries its own rebuttal. Years later Steve prepended a note conceding OCaml has "fairly fundamental problems" for server-side work, demoting it to a C++ substitute for client-side GUI programs while maintaining it's still a really cool language. Reading the 2004 enthusiasm with that ceiling already visible is half the fun. The rest is the ending, where the feature list gets dropped entirely for a quieter question: what actually makes a programmer commit to a language once the benchmarks stop mattering.

Related listings