The State of the OCaml Platform: September 2017
The OCaml Platform combines the OCaml compiler toolchain with a coherent set of tools for build, documentation, testing and IDE integration. The project is a collaborative effort across the OCaml community, tied together by the OCaml Labs group in Cambridge, and OCamlPro. The requirements of the Platform are guided by large industrial users such as Jane Street, Citrix, Docker, Facebook, Microsoft and LexiFi, as well as accrued feedback from the \opam project.
We have initially taken direction from major industrial users because these groups have a wealth of experience of using the language at scale. For the Platform to be considered successful, it has to be a viable product for these heavy users of OCaml. However, each of the users also have large codebases with distinct coding styles, and often have built their own extensive libraries to complement the OCaml standard library and open-source ecosystem. Pursuing goals desirable to large-scale industrial users has also proven to benefit the wider community.
This talk is a follow-on from previous years, with the good news that this year has been one of the busiest for releases of platform tools. There have been significant advances in the state of build systems, packaging, testing and Windows support, with much of this released into the stable \opam package ecosystem and available for general use. We will also explain some of the uptake of these tools in major projects around the community.
NOTE: The maintainers of the projects described in the full abstract come from different academic and industrial organisations. The goal of the talk is to place all of these projects into the context of the OCaml Platform, with due credit assigned during the presentation to each contributor.
I’m a University Lecturer at the University of Cambridge. I’ve worked in a variety of senior architecture, engineering, product management, sales and “whatever it takes” roles in industry (S, M, L, XL) as well as government and research (S, M, L). I completed my PhD in 2006 at the University of Cambridge Computer Laboratory in the Systems Research Group. You can read my thesis and various academic publications here. My research goal is to improve the security, reliability and performance of the Internet. I’m having great fun leading the OCaml Labs group at Cambridge, and building the Mirage unikernel operating system as a new foundation for networked, multi-scale applications. I also think about ubiquitous computing technologies, and develop open-source software such as the secure OpenBSD operating system.