In part 3 I described how to write targets which can access network resources, and how to use memoization to make them run fast. In this (last) part of the series, I’ll describe the final fea…
We are very happy to announce the beta release of OPAM version 1.1.0! OPAM is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow which. OPAM is edited and maintained by OCamlPro, wi...
In part 2 I introduced an example goaljobs script that can rebuild a set of packages in Fedora in the right order. It’s time to take a closer look at targets — the promise that you make…
In part 1 I showed how a simple make rule could be converted to a special “goal” function and I hinted that we were not limited to just the “file is older than” semantics im…
A little more than a year ago I released whenjobs which was an attempt to create a practical language for automating complex “business rules”. The kind of thing I’m talking about …
Fan is a metaprogramming tool for OCaml. I believe it would be an invaluable tool for the community when it’s production ready. If you are attracted by the power of Camlp4 while frustrated wi…
After using OCaml for around 10 years it is still my favourite language, and it’s amazing how far ahead of other programming languages it remains to this day. OCaml 4.01.0 was released on Thu…
Now that I've shat on mutability in prior posts, let's talk about how it pervades my game code. I'm a fan of the component model for gam...