Craig Ferguson

Open-source software developer at Tarides. ⛵

  •    •  

Working on OCaml open-source tooling and distributed storage.

Living in Paris, under the careful supervision of those who can speak French.

🛠  PROJECTS

  • Irmin, a high-performance distributed database with Git-based semantics;

  • Alcotest, a testing framework with combinators and coloured output;

  • Repr, run-time representations of OCaml types;

  • Progress, a small library for defining and using progress bars;

  • Brands, tiny library for lightweight higher-kinded polymorphism in OCaml;

  • Oskel, a skeleton-builder for modern OCaml projects;

  • ... see my GitHub profile.

I've also recently been working on an operator lookup tool for OCaml.

📝  POSTS

Mostly discussion of OCaml design patterns and tooling:

🎙  TALKS

  • CausalRPC, in which I discuss the design trade-offs of creating a type-safe RPC framework using Git-based semantics. Given at the OCaml workshop at ICFP 2019 (23rd August). Recording of the talk forthcoming.

  • Particle Swarm Optimisation, in which I give a brief introduction to swarm intelligence and its practical applications. Presented to my fellow Churchill Computer Scientists during my degree.

🏺  ARTEFACTS