OCaml Weekly News

Previous Week Up Next Week

Hello

Here is the latest OCaml Weekly News, for the week of January 27 to February 03, 2026.

Table of Contents

Ofortune!

Tim ats announced

Hi everyone,

I'm very glad to announce the release of Ofortune! Ofortune is a fortune-teller written in OCaml. For those who didn't know, fortune is a small NetBSD utility which, according to its man page, "prints a random, hopefully interesting, adage".

ced911b15beffb91c8d906e073eef707bb722f2b.gif

Even though the goal of Ofortune is not to behave exactly like the legacy implementation, it shares most of the same command-line flags. By default, Ofortune searches fortune files in the directory /usr/share/games/fortune, but you may directly set the files used to pick a random fortune (with eventually an associated probability) by doing the following ofortune 60% quotations 40% funny-quotations.

I think that ofortune is one of those software programs that is moderately interesting unless you give it an excellent database to work with, so feel free to write your own cookie files. Your can for you can place it in your bashrc file to display a random quote each time you open a terminal.

Ofortune is written in dependance free OCaml > 5.4. To install it, type (this will install an executable named ofortune in your path):

git clone https://git.sr.ht/~tim-ats-d/ofortune && cd ofortune && make native && install -T ofortune_unix.native /bin/ofortune

An online version compiled with js_of_ocaml is available at this address: https://site.condor-du-plateau.fr/ofortune-web.html.

Ofortune is distributed under the LGPL-3.0 license, and the source code is available here.

OUPS meetup february 2026

ancolie announced

The next OUPS meetup will take place on Wednesday, 25th of February 2026. It will start at 6:30pm at the 4 place Jussieu in Paris. It will be in the in the Esclangon building (amphi Astier).

Please, register on meetup as soon as possible to let us know how many pizza we should order.

For more details, you may check the OUPS’ website .

Moreover, we’d like to announce that the organizing team moved to the OCaml Zulip. Feel free to contact us there if you’d like to suggest talks.

This time we’ll have the following talks:

Coccinelle, for C and for Rust – Julia Lawall

Coccinelle is a tool for automating complex repetitive searches and transformations in source code. It was originally developed for the C language, targetting the Linux kernel, but we have recently started working on Rust. This talk will give an overview of Coccinelle targeting C, present the main design decisions and how they translate to Rust, and present some practical examples involving Rust. Both versions of Coccinelle are available in open source.

OCaml and the MOPSA static analysis platform – Marco Milanese

In this talk we present MOPSA, a static analysis platform built in OCaml: MOPSA implements a sound analysis (based on the theory of abstract interpretation), with an emphasis on reusability and modularity of abstractions.

To this end each domain performs a simple, targeted, simplification of the program and it can be swapped or combined with other domains to tune the precision/performance tradeoff of the analysis. OCaml and its type and module systems play a crucial role to achieve this goal.. we will see how monads, modules and abstract data types (and more!) naturally describe the components of a static analysis tool.

After the talks there will be some pizzas offered by the OCaml Software Foundation and later on we’ll move to a pub nearby as usual.

shakuhachi v0.2.0

EruEri announced

I'm happy to announce the release shakuhachi v0.2.0. Shakuhachi is a music collection manager. It aims to be a rather simple collection manager extensible by plugins.

This release is mostly a bug-fix release, but some new functions are exposed through its API.

Sincerely yours.

OCaml security grants

Hannes Mehnert announced

Dear OCaml hackers,

we're pleased to announce that there are grants (up to 100_000 EUR) available for the broad topic of OCaml and security. The main idea is to strengthen the OCaml ecosystem in terms of security - being it tooling, documentation, guides, ….

Your submitted proposal (until March 1st) will be reviewed by the OCaml security team (https://ocaml.org/security). This wouldn't be possible with the OCSF (https://ocaml-sf.org/) and their sponsors.

If you have an idea, please go to https://cryptpad.fr/form/#/2/form/view/ozl80ZB3ndLhMcGeu0buygGOIwZWL6+dxbPuXgT+Wxs/ and submit your proposal.

Thanks,

Hannes (in the name of the OCaml security team)

New release of Menhir (20260122)

François Pottier announced

I am pleased to announce a new version of Menhir.

opam update && opam install menhir.20260122

The main new feature is a brand new GLR back-end. This back-end is selected by the command line switch --GLR. GLR is a non-deterministic parsing algorithm; it is useful when the grammar lies outside the class LR(1), either because the grammar is unambiguous but requires more than one token of lookahead, or because the grammar is truly ambiguous. For more information on GLR, please read the manual.

There are also many minor changes in this release; please see the change log for details.

Happy parsing,

François.

OCaml for Industry

Nicolas Ojeda Bar announced

Dear community,

This Friday, Feb 6 at 15:00-17:00 CET the OCSF is organizing a video call in collaboration with Tarides and OCamlPro to discuss all aspects of OCaml relevant to industrial users. We have invited all OCSF sponsors to participate, but would be very happy to welcome other industrial users (who are not currently OCSF sponsors) if they want to participate.

So, if you are an industrial user of OCaml and would like to participate, please get in touch and I will forward the meeting details.

Thanks!

Cheers, Nicolas

Mset 0.2.0 - new library for small multisets

Jean Christophe Filliatre announced

Dear OCaml community,

I’m pleased to announce the first release of mset, a library that implements multisets as soon as they are small enough to fit inside a single int (as a bitset).

It is available via opam and here at GitHub:

I implemented this library as part of a project to count anagrams but I anticipate it might be useful for other purposes.

Happy hacking,

Jean-Christophe

Lwt.6.1.0, Lwt_ppx.6.1.0

Raphaël Proust announced

Lwt.6.1.0 has been release. It contains some fixes (see full changelog, special thanks to @kit-ty-kate and @otini) as well as the following notable addition:

  • New Lwt_engine.engine_id to know what underlying engine Lwt is currently using.

Lwt_ppx.6.1.0 (also Lwt_ppx.5.9.3) has been released. It contains a fix to correctly carry type annotations: let%lwt x : t = … in … now produces code that correctly place the t annotation. (This was caused by a change in ppxlib which was not accounted for previously.)

Versions 6.0.0 and 5.9.2 or lwt_ppx are marked as avoid-version in opam-repository. They are fine to use as long as you don't use type annotations but you should update to 6.1.0 or 5.9.3.

Special thanks to @Halbaroth for the bug report.

Other OCaml News

Old CWN

If you happen to miss a CWN, you can send me a message and I'll mail it to you, or go take a look at the archive or the RSS feed of the archives.

If you also wish to receive it every week by mail, you may subscribe to the caml-list.