Blog

The OCaml Planet

Articles and videos contributed by both experts, companies and passionate developers from the OCaml community. From in-depth technical articles, project highlights, community news, or insights into Open Source projects, the OCaml Planet RSS feed aggregator has something for everyone.

Want your Blog Posts or Videos to Show Here?

To contribute a blog post, or add your RSS feed, check out the Contributing Guide on GitHub.

This site

07 Apr 2025

Jon Ludlam's Blog at recoil.org

Read Article
This site

07 Apr 2025

Jon Ludlam's Blog at recoil.org

Read Article
Learning OCaml: Module Aliases

OCaml is famous for allow you to do a lot of things like modules. Like really a lot! Advanced features like functors, aside, it’s really common to either alias module names to something shorter or localize open Module_name to a smaller scope:

06 Apr 2025

Bozhidar Batsov

Read Article
Learning OCaml: Parsing Data with Scanf

In my previous article I mentioned that OCaml’s Stdlib leaves a lot to be desire when it comes to regular expressions. One thing I didn’t discuss back then was that the problem is somewhat mitigated by the excellent module Scanf, which makes it easy to parse structured data.

06 Apr 2025

Bozhidar Batsov

Read Article
Learning OCaml: Regular Expressions

One of the things that bothered me initially in OCaml was the poor support for working in regular expressions in the standard library. Technically speaking, there’s no support for them at all!

04 Apr 2025

Bozhidar Batsov

Read Article
Making OCaml Safe for Performance Engineering

Jane Street is a trading firm that uses a variety of high-performance systems built in OCaml to provide liquidity to financial markets worldwide. Over the last couple of years, we have started developing major extensions to OCaml’s type system, with the primary goal of making OCaml a better language for writing high-performance systems. In this talk, we will attempt to provide a developer's-eye view of these changes. We’ll cover two major directions of innovation: first, the addition of modal types to OCaml, which opens up a variety of ambitious features, like memory-safe stack-allocation; type-level tracking of effects, and data-race freedom guarantees for multicore code. The second is the addition of a kind system to OCaml, which provides more control over the representation of memory, in particular allowing for structured data to be represented in a cache-and-prefetch-friendly tabular form. Together, these features pull together some of the most important features for writing high performance code in Rust, while maintaining the relative simplicity of programming in OCaml. In all of this, we will focus less on the type theory, and more on how these features are surfaced to users, the practical problems that they help us solve, and the place in the design space of programming languages that this leaves us in.

03 Apr 2025

Jane Street - Tech Talks

View Video
OCaml in Space: SpaceOS is on a Satellite!

Our sister company Parsimoni sends OCaml into space aboard DPhi Space's Clustergate ride-sharing platform to test the cababilities of SpaceOS.

03 Apr 2025

Tarides

Read Article
Everything is a file; except when it’s not

Some titles make more sense than others. One of my oldest contributions to OCaml was a complete overhaul of Unix.stat et al in ocaml/ocaml#462 which formed part of OCaml 4.03. As part of the work on msvs-detect in late 2015, I’d ended up with a Windows 7 VM which had every single version of Visual Studio back to Visual Studio 6.0. Visual Studio (and Visual C++ before that) has always included the source code for the C Runtime Library (CRT), and as a side-effect of having all these installed Visual Studios, I was able to construct a Git repository showing the evolution of the CRT code over each release (sadly, the licence doesn’t allow this to be pushed publicly). This was particularly useful for studying how the behaviour of the stat implementation had changed over time, particularly with reference to Windows Vista’s symlinks. Anyway, that particular bit of work left me with a habit of often reaching for the CRT whenever something weird’s happening, and that’s led naturally to a fairly detailed bug-fix - and outline for more bug-fixes - in OCaml.

03 Apr 2025

David Allsopp's Blog

Read Article