Documentation for OxCaml extensions
This documentation was written by the OxCaml developers at Jane Street, with contributions from collaborators at the University of Cambridge and at Tarides.
The documentation section of this website is extracted from our GitHub repo. Feel free to submit a pull request modifying this directory to improve our documentation!
Looking for a place to discuss OxCaml? Try the OCaml community discord server.
Upstreaming
It is a goal of the OxCaml project to, eventually, with the support of the OCaml community, integrate these extensions into upstream OCaml. For some extensions, this has already begun:
- Immutable arrays will be available in OCaml 5.4.
- Labeled tuples will be available in OCaml 5.4.
- Include-functor is being upstreamed as of summer 2025. Expect it in OCaml 5.5.
- Polymorphic parameters is being upstreamed as of summer 2025. Expect it in OCaml 5.5.
- Module strengthening is being upstreamed as of summer 2025 (though with different syntax). Expect it in OCaml 5.5.
The other extensions are, as of summer 2025, too fresh and too much in flux to be good candidates for inclusion in OCaml. As we gain experience with these experimental additions, they will be considered as candidates for upstreaming.