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.
Parsing WebSocket frames in OCaml with bitstring pattern matching, inspired by Erlang, Elixir, and Gleam.
Build on ReScript's type-checking rules to understand how the compiler types functions and compound expressions.
A practical introduction to how ReScript infers types for variables and uses the environment to check code.
An attempt to type Erlang exposes the challenges of unions, records, receive expressions, and dynamic dispatch on the BEAM.
Every data language makes tradeoffs about validation, domain fit, and how much information a program can express.
Compare JavaScript symbols with atoms in other languages and show how Symbol.for creates stable, reusable names.