Riot is dead, long live Riot!
A look back at Riot's OCaml actor runtime, the scheduler and I/O challenges it faced, and what comes next.
A look back at Riot's OCaml actor runtime, the scheduler and I/O challenges it faced, and what comes next.
A comparison of exceptions and results in OCaml, from signaling failures to handling and reporting errors ergonomically.
Parsing WebSocket frames in OCaml with bitstring pattern matching, inspired by Erlang, Elixir, and Gleam.
A socket-pool bug reveals the low-level pitfalls of OCaml's Unix module and makes the case for safer networking APIs.
Use type-state in OCaml to make invalid state-machine transitions impossible while keeping the API approachable.
An OCaml validation example shows when GADTs help, when they add complexity, and why simpler types often suffice.
Model a web router with OCaml types to explore a domain, challenge assumptions, and refine the design quickly.
An OCaml command-line library shows how powerful abstractions can become difficult to use without approachable APIs and documentation.