From: Alan Schmitt <alan.schmitt@polytechnique.org>
To: "lwn" <lwn@lwn.net>, caml-list@inria.fr
Subject: [Caml-list] Attn: Development Editor, Latest OCaml Weekly News
Date: Tue, 07 Apr 2026 11:32:27 +0200 [thread overview]
Message-ID: <m2o6jvundg.fsf@petitepomme.net> (raw)
[-- Attachment #1.1.1: Type: text/plain, Size: 25076 bytes --]
Hello
Here is the latest OCaml Weekly News, for the week of March 31 to April
07, 2026.
Table of Contents
─────────────────
restricted 2.0.0 limit which system operations and which parts of the filesystem your program can access
Job offer: compiler engineer for Catala @ CNAF (social benefits agency)
ocgtk 0.1: OCaml bindings for GTK 4 (preview release)
out-channel-redirect 0.1 — Redirect and capture out_channel output
ppxlib.0.38.0
A Proposal for Voluntary AI Disclosure in OCaml Code
Blog: OCaml documentation as markdown
hotseat Squava (a tiny LablGtk2 demo)
opentelemetry 0.90 (and associated libraries)
Dune 3.22
Old CWN
restricted 2.0.0 limit which system operations and which parts of the filesystem your program can access
════════════════════════════════════════════════════════════════════════════════════════════════════════
Archive:
<https://discuss.ocaml.org/t/ann-restricted-2-0-0-limit-which-system-operations-and-which-parts-of-the-filesystem-your-program-can-access/17942/1>
removewingman announced
───────────────────────
Hello,
I am happy to announce a new version of [restricted].
This library lets you limit which system operations and which parts of
the filesystem your program can access. Call it as early as possible
in your program so that the rest of the code runs with reduced
privileges. Currently, actual enforced restrictions are implemented
for these operating systems:
• OpenBSD
• Linux (only filesystem view)
Even on other operating systems, you can still use [restricted] to
document which privileges your program needs. Users can then test if
your program respects these promises with tools such as [pledge on
Linux]. Enjoy :slight_smile:
• [opam]
• [api]
• [examples]
• [git repo]
• [License AGPL]
CHANGELOG:
• tested on:
‣ x86_64 openbsd (16/16 Tests passed)
‣ x86_64-alpine-linux (Landlock ABI version: 7) (4/12 Tests passed:
file_read_unv, file_write_unv, file_create_unv_linux,
file_cwrr_unv_linux)
[restricted] <https://opam.ocaml.org/packages/restricted/>
[restricted] <https://removewingman.codeberg.page/restricted/>
[pledge on Linux] <https://justine.lol/pledge/>
[opam] <https://opam.ocaml.org/packages/restricted/restricted.1.2.0/>
[api] <https://removewingman.codeberg.page/restricted/>
[examples]
<https://codeberg.org/removewingman/restricted/src/branch/main#usage-and-examples>
[git repo] <https://codeberg.org/removewingman/restricted>
[License AGPL]
<https://en.wikipedia.org/wiki/GNU_Affero_General_Public_License>
Added
╌╌╌╌╌
• API: exec promises and accesses optional
• OpenBSD: exec promises
Removed
╌╌╌╌╌╌╌
• SystemOperation.TmpPath (deprecated see: `pledge (2)')
Job offer: compiler engineer for Catala @ CNAF (social benefits agency)
═══════════════════════════════════════════════════════════════════════
Archive:
<https://discuss.ocaml.org/t/job-offer-compiler-engineer-for-catala-cnaf-social-benefits-agency/17943/1>
Denis Merigoux announced
────────────────────────
[The following is in French since this is a job offer in the French
public sector]
*Candidatez ici :*
<https://www.lasecurecrute.fr/offre-emploi/ingenieur-expert-en-compilation-langages-de-programmation--f-h/normandie/1065497>
La *CNAF* (Caisse Nationale des Allocations Familiales),
tête de réseau des 101 CAF, représente la branche Famille
de la Sécurité sociale et a pour mission de piloter la
politique familiale et l’aide aux populations en situation
de précarité ainsi que la politique d’action sociale.
Au sein de la Direction des Systèmes d’Information (DSI),
comptant environ 880 collaborateurs, la *Direction
Prestations Flux et Décisionnel (DPFD)* est découpée en 4
départements et vous serez rattaché au *département «
Prestations Individuelles et Référentiels Métiers »* qui
est présent sur les sites de Caen, Le Mans et Rennes.
Ce département a pour mission principale de concevoir,
développer et maintenir le système d’information lié aux
prestations individuelles (prestations versées aux
allocataires telles que l’allocation familiale,
l’allocation logement, la prime à la naissance, le RSA, la
prime d’activité, …). Le département fournit ainsi des
moteurs de règles, ainsi que les spécifications
fonctionnelles associées afin de calculer le bon droit, au
bon moment, pour les allocations versées par les CAF.
Dans le cadre de projets stratégiques pour la branche
famille, la ou le candidat intégrera le *centre technique
Catala de la CNAF*.
Catala est un langage de programmation dédié développé par
l’Institut National de Recherche en Informatique et en
Automatique (Inria), spécialement adapté à la
transformation de spécifications juridiques et
réglementaires en code informatique. La CNAF ayant décidé
de s’appuyer sur Catala pour les projets de modernisation
de son système de calcul des prestations sociales, elle
souhaite également internaliser des compétences de
maintenance sur l’outillage de Catala au travers de ce
poste.
Le centre technique Catala a ainsi vocation à produire des
contributions open-source sur Catala, mais aussi à
répondre aux besoins d’expertise technique du département
« Prestations Individuelles et Référentiels Métiers » pour
ses projets liés aux moteurs de calcul des prestations
sociales.
La personne recrutée travaillera avec l’équipe Catala de l’Inria
(Louis Gesbert, Vincent Botbol, Romain Primet et moi-même) ! N’hésitez
pas à me contacter si vous avez des questions sur le job
:slight_smile:
Un petit aperçu des choses faites et à faire en compilation sur Catala
: <https://blog.merigoux.ovh/en/2026/02/19/building-proper-pl.html>
ocgtk 0.1: OCaml bindings for GTK 4 (preview release)
═════════════════════════════════════════════════════
Archive:
<https://discuss.ocaml.org/t/ann-ocgtk-0-1-ocaml-bindings-for-gtk-4-preview-release/17944/1>
Chris Armstrong announced
─────────────────────────
I’m pleased to announce the first preview release of ocgtk, OCaml
bindings for GTK 4 (v0.1-preview0).
What is it?
╌╌╌╌╌╌╌╌╌╌╌
[ocgtk] provides OCaml bindings for the GTK 4 widget toolkit and its
associated libraries (GDK, GIO, Pango, GdkPixbuf, GSK, Graphene,
Cairo). It targets OCaml >=5.3 (for now).
It is inspired by, and draws some core common code and many design
ideas from, lablgtk3 — the long-standing GTK 3 bindings
library. However, the APIs are not compatible: whereas lablgtk3’s
bindings are largely hand-written, ocgtk uses a code generator that
reads GObject Introspection (GIR) definition files to produce both C
stubs and OCaml wrappers. This means binding coverage tracks the GIR
definitions rather than hand-written effort, and the generated code
follows a consistent procedural structure.
*A note on tooling*: the code generator itself was developed with
heavy assistance from LLMs. However, the output (the C stubs and
OCaml modules that form the actual library) is programmatically
generated from the GIR definitions, not written by an LLM.
[ocgtk] <https://github.com/chris-armstrong/ocgtk>
What’s implemented
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
• Bindings for GTK 4, GDK, GIO, Pango, GdkPixbuf, GSK, Graphene, and
Cairo
• Classes, records, enumerations, and bitfields
• Constructors, methods, and properties
• Signals (no return values or parameters)
• A working example: a GTK 4 calculator application
What’s missing
╌╌╌╌╌╌╌╌╌╌╌╌╌╌
This is a first milestone, not a production-ready release. Several
important features are not yet supported:
• *Interfaces*: GObject interfaces are not yet supported. This has a
broader impact than it might appear: not only are interface types
themselves absent, but any method on a class that takes an interface
as a parameter or returns an interface type is also suppressed. This
means some methods on otherwise-supported classes will be missing
from the bindings.
• *Callbacks*: Functions that accept OCaml callbacks as arguments
(beyond signals) are not yet supported. This limits use of many
asynchronous GIO APIs and some GTK patterns.
• *Free functions:* Top-level functions (not attached to a class) are
not yet generated. Some utility APIs are therefore unavailable.
• *Non-opaque record field access:* Fields of non-opaque GLib/GDK
records cannot yet be read directly.
• *Multi-parameter signals:* Only signals with zero parameters and no
return value are supported; signals with complex signatures are
silently skipped.
• *GLib types*: most GLib types are not bound, which means that
several useful APIs that use lists, byte arrays, GVariants (heavily
used by DBus) are not available.
These gaps mean you can build basic GTK applications, but expect to
hit walls with more advanced widget usage, asynchronous I/O, or any
API that relies heavily on interfaces.
There is a [ROADMAP.md] that lists the rough plan to deal with much of
the above.
[ROADMAP.md]
<https://github.com/chris-armstrong/ocgtk/blob/main/ROADMAP.md>
Documentation
╌╌╌╌╌╌╌╌╌╌╌╌╌
API reference documentation is currently deficient. Accurately
generating documentation from GIR definitions is an unsolved problem
for this project, so for now the generated modules are largely
undocumented. In the meantime, the GTK 4 documentation is the best
reference for understanding what each binding corresponds to, and the
examples in the repository illustrate practical usage — in particular
the calculator example, which demonstrates a non-trivial GTK 4
application.
Stability
╌╌╌╌╌╌╌╌╌
This code is untested in production environments. The generated
bindings cover a large surface area, but test coverage is not yet
comprehensive. I would caution against use in any production or
safety-sensitive context at this stage. Comments or MRs are welcome.
This code has not been tested outside of Linux environments.
Installation and Usage
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
Download and pin the source code for now (I’m in the process of
preparing an opam release. This is taking a some time to sort through
cross-platform issues, so I’ll update here with a comment when that is
available).
The bindings have been generated against GTK 4.14.5 (Ubuntu 24.04). If
you have an older version, it should still compile (in theory), but
you will receive runtime errors on APIs not available in your version.
1. Download the repository:<https://github.com/chris-armstrong/ocgtk>
(you can use the v0.1-preview0 tag to get what I’ve mentioned here)
2. Pin the conf-gtk4 and ocgtk packages in their respective
subdirectories
1. `opam pin conf-gtk'
2. `opam pin ocgtk'
3. Run `opam install ocgtk'
Each library is exposed at the ocamlfind level as `ocgtk.<libname>' -
for example, add `ocgtk.gtk' or `ocgtk.gdk' to your dune file, while
depending on `ocgtk' in your `opam' / `dune-project' file.
*Source and issue tracker*: <https://github.com/chris-armstrong/ocgtk>
Feedback and bug reports welcome.
out-channel-redirect 0.1 — Redirect and capture out_channel output
══════════════════════════════════════════════════════════════════
Archive:
<https://discuss.ocaml.org/t/ann-out-channel-redirect-0-1-redirect-and-capture-out-channel-output/17945/1>
Hhugo announced
───────────────
I’m happy to announce the first release of [out-channel-redirect], a
library for redirecting and capturing output written to out_channels.
[out-channel-redirect] <https://github.com/hhugo/out-channel-redirect>
Features:
╌╌╌╌╌╌╌╌╌
• Capture any out_channel into a string (with convenience shorthands
for stdout and stderr)
• Redirect one channel into another
• Works on native (via dup/dup2), JavaScript (js_of_ocaml), and
WebAssembly (wasm_of_ocaml)
• Expert API for manual redirection lifetime control
Installation:
╌╌╌╌╌╌╌╌╌╌╌╌╌
┌────
│ opam install out-channel-redirect
└────
Quick example:
╌╌╌╌╌╌╌╌╌╌╌╌╌╌
┌────
│ let output, result =
│ Out_channel_redirect.capture_channel some_channel ~f:(fun () →
│ Printf.fprintf some_channel “hello”;
│ 42)
│ (* output = “hello”, result = 42 *)
└────
ppxlib.0.38.0
═════════════
Archive: <https://discuss.ocaml.org/t/ann-ppxlib-0-38-0/17948/1>
Nathan Rebours announced
────────────────────────
The ppxlib team is happy to announce the release of ppxlib.0.38.0.
The main features of this release are support for OCaml 5.5 and
improved support of OCaml 5.4 and 5.3. It also comes with a few bug
fixes and a couple new API entries, you can read the extensive release
notes [here].
This is our first release since we announced our new approach to
supporting new compilers in [this thread]. All support for compilers
versions `>= 5.3' is implemented using this technique and new language
features are encoded into the AST. We've added `Ast_builder' and
`Ast_pattern' functions to allow you to manipulate some of those, such
as labeled tuples or effect patterns. You can see those in our API
documentation [here] and [there]. We've also illustrated how to use
them in our [new manual section]. If you're interested in producing or
consuming other new language features that cannot be represented with
our current internal AST (5.2), please [open an issue] so we can add
the relevant helpers.
Given the ecosystem hasn't yet recovered from the 5.2 AST bump and
`ppxlib.0.36.0', we're glad that we can add support for new compilers
without introducing further breakage and keep the maintenance burden
within ppxlib's bounds. We've started [discussions] with the compiler
team to make this approach even more viable in the future on our end.
We'd like to thank @ceastlund who's our only external contributor for
this release.
I'd personally like to thank @patricoferris for his help getting this
out the door as well as the OCaml Software Foundation and OCamlPro for
funding my work on ppxlib.
Thank you for reading and happy preprocessing!
[here] <https://github.com/ocaml-ppx/ppxlib/releases/tag/0.38.0>
[this thread]
<https://discuss.ocaml.org/t/ann-ppxlib-support-for-future-compilers/17430>
[here]
<https://ocaml-ppx.github.io/ppxlib/ppxlib/Ppxlib/Ast_builder/Default/index.html#future-asts>
[there]
<https://ocaml-ppx.github.io/ppxlib/ppxlib/Ppxlib/Ast_pattern/index.html#future-asts>
[new manual section]
<https://ocaml-ppx.github.io/ppxlib/ppxlib/compatibility.html#future_compilers>
[open an issue] <https://github.com/ocaml-ppx/ppxlib/issues/new>
[discussions] <https://github.com/ocaml/ocaml/issues/14668>
A Proposal for Voluntary AI Disclosure in OCaml Code
════════════════════════════════════════════════════
Archive:
<https://discuss.ocaml.org/t/a-proposal-for-voluntary-ai-disclosure-in-ocaml-code/17950/1>
Anil Madhavapeddy announced
───────────────────────────
Dear all,
I've put together an *[ocaml-ai-disclosure]* proposal to allow
voluntary disclosure of AI usage in published OCaml code, using opam
metadata and [extension attributes] in source code.
The repository and [blog post] have more details, some prototype
tooling to extract attributes, and a FAQ, but in a nutshell I'm
proposing something very similar to a [W3C disclosure proposal for
HTML].
[ocaml-ai-disclosure] <https://github.com/avsm/ocaml-ai-disclosure>
[extension attributes] <https://ocaml.org/manual/5.3/attributes.html>
[blog post] <https://anil.recoil.org/notes/opam-ai-disclosure>
[W3C disclosure proposal for HTML]
<https://www.w3.org/community/ai-content-disclosure/>
Package Disclosures
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
An opam package can declare its disclosure using extension fields:
┌────
│ x-ai-disclosure: "ai-assisted"
│ x-ai-model: "claude-opus-4-6"
│ x-ai-provider: "Anthropic"
└────
/Note: This may just become a list of values in the final proposal,
but you get the idea./
OCaml Module level
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
OCaml supports extension attributes, which we use via a floating
attribute that applies to the entire compilation unit:
┌────
│ [@@@ai_disclosure "ai-generated"]
│ [@@@ai_model "claude-opus-4-6"]
│ [@@@ai_provider "Anthropic"]
│
│ let foo = ...
│ let bar = ...
└────
These can also be scoped more finely via declaration attributes that
apply to a single binding:
┌────
│ [@@@ai_disclosure "ai-assisted"]
│
│ let human_written x = ...
│
│ let ai_helper y = ...
│ [@@ai_disclosure "ai-generated"]
└────
Disclosure follows a nearest-ancestor inheritance model like the W3C
HTML proposal, whereby an explicit annotation overrides the inherited
value.
I wrote a [blog post with more details], as well as an [FAQ in the
proposal repository] about some of the implications.
I couldn't find any other prior art of other language ecosystems
trying anything similar, so I'd be interested in hearing about any
others you all know about. If there's no interest in the wider
ecosystem in doing this, then I'll just use it myself, but I figured
there's no harm in starting the discussion!
[blog post with more details]
<https://anil.recoil.org/notes/opam-ai-disclosure>
[FAQ in the proposal repository]
<https://github.com/avsm/ocaml-ai-disclosure>
Blog: OCaml documentation as markdown
═════════════════════════════════════
Archive:
<https://discuss.ocaml.org/t/blog-ocaml-documentation-as-markdown/17951/1>
David Sancho announced
──────────────────────
I published a blog post about odoc's markdown backend and how I used
it to make the melange.re documentation better, hope you like it:
<https://sancho.dev/blog/ocaml-documentation-as-markdown>
Thanks to @jonludlam @rgrinberg and @Alizter for reviewing the work
that made it possible.
hotseat Squava (a tiny LablGtk2 demo)
═════════════════════════════════════
Archive:
<https://discuss.ocaml.org/t/ann-hotseat-squava-a-tiny-lablgtk2-demo/17957/1>
Damien Guichard announced
─────────────────────────
<https://pastebin.com/Nwu2aC7A>
The [Squava board game].
<https://us1.discourse-cdn.com/flex020/uploads/ocaml/original/2X/8/87c31d9f127f99f12e96ecff6c579b710926f945.png>
Squava 1.1 has no vector graphics, however you can edit/shrink/stretch
`./squava.png' and the program will adapt the board using the new
pixmap.
<https://us1.discourse-cdn.com/flex020/uploads/ocaml/original/2X/6/66cc412e804f7d1e81a6d11ea5c4645f3edfc871.jpeg>
[Squava board game] <https://boardgamegeek.com/boardgame/112745/squava>
opentelemetry 0.90 (and associated libraries)
═════════════════════════════════════════════
Archive:
<https://discuss.ocaml.org/t/ann-opentelemetry-0-90-and-associated-libraries/17958/1>
Simon Cruanes announced
───────────────────────
Hello,
I'm thrilled to announce [opentelemetry 0.90] (as well as
`opentelemetry-client', `opentelemetry-client-cohttp-lwt', etc.).
Opentelemetry is an implementation of <https://opentelemetry.io/> for
OCaml; it covers both the core _client API_ (for instrumentation of
libraries, etc.) and the full SDK with various _exporters_. It is
compatible with [Trace].
This release is the result of months of work and is hopefully one of
the last before 1.0. The [changelog] is pretty big, I reworked a lot
of things; among others:
• move to ocaml-protoc/pbrt 4.0 (with mutable fields and a different
codegen for protobufs)
• the API is closer to guidelines from <https://opentelemetry.io> (not
fully there yet but better)
• modularity of the internal processing of signals is much improved,
with better code reuse, pluggable ~everything, better
queueing/batching, HTTP retries
• support for exporting as JSON instead of protobuf
• support for trace 0.11, which allows `opentelemetry.trace' to eschew
all its global state except for the global OTEL exporter
• better lifecycle and cleanup
API documentation can be found [here]. As always, feedback, bug
reports, etc are very welcome.
[opentelemetry 0.90]
<https://github.com/ocaml-tracing/ocaml-opentelemetry/releases/tag/v0.90>
[Trace] <https://github.com/ocaml-tracing/ocaml-trace/>
[changelog]
<https://github.com/ocaml-tracing/ocaml-opentelemetry/blob/main/CHANGES.md#090>
[here] <https://ocaml-tracing.github.io/ocaml-opentelemetry/>
Dune 3.22
═════════
Archive: <https://discuss.ocaml.org/t/ann-dune-3-22/17912/2>
Continuing this thread, Shon announced
──────────────────────────────────────
The Dune team is pleased to announce [the release of dune 3.22.1].
If you encounter a problem with this release, please report it in [our
issue tracker].
[the release of dune 3.22.1]
<https://github.com/ocaml/dune/releases/tag/3.22.1>
[our issue tracker] <https://github.com/ocaml/dune/issues>
Fixed
╌╌╌╌╌
• Restore compatibility with Windows 7 (#13905, @nojb)
• `dune test' now runs tests in the default context only. When there
is a single context, it is treated as the default. This fixes a
crash when the workspace has no context named "default". (#13930,
fixes #13904, @Alizter)
• Fix `dune trace cat --chrome-trace' to adhere to the Chrome Trace
Event Format by providing timestamps and durations at microsecond
granularity (#13911, fixes #13906, @Alizter)
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].
[Alan Schmitt]
[send me a message] <mailto:alan.schmitt@polytechnique.org>
[the archive] <https://alan.petitepomme.net/cwn/>
[RSS feed of the archives] <https://alan.petitepomme.net/cwn/cwn.rss>
[caml-list] <https://sympa.inria.fr/sympa/info/caml-list>
[Alan Schmitt] <https://alan.petitepomme.net/>
[-- Attachment #1.1.2: Type: text/html, Size: 39950 bytes --]
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 568 bytes --]
next reply other threads:[~2026-04-07 9:32 UTC|newest]
Thread overview: 287+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-07 9:32 Alan Schmitt [this message]
-- strict thread matches above, loose matches on Subject: below --
2026-03-31 6:10 Alan Schmitt
2026-03-24 9:58 Alan Schmitt
2026-03-17 14:39 Alan Schmitt
2026-03-10 13:30 Alan Schmitt
2026-03-03 13:54 Alan Schmitt
2026-02-24 13:36 Alan Schmitt
2026-02-17 13:47 Alan Schmitt
2026-02-10 10:36 Alan Schmitt
2026-02-03 10:04 Alan Schmitt
2026-01-27 12:41 Alan Schmitt
2026-01-20 9:19 Alan Schmitt
2026-01-13 8:27 Alan Schmitt
2026-01-06 13:14 Alan Schmitt
2025-12-30 9:33 Alan Schmitt
2025-12-23 11:00 Alan Schmitt
2025-12-16 13:30 Alan Schmitt
2025-12-09 15:04 Alan Schmitt
2025-12-02 10:39 Alan Schmitt
2025-11-25 13:49 Alan Schmitt
2025-11-18 14:01 Alan Schmitt
2025-11-11 9:49 Alan Schmitt
2025-11-04 13:21 Alan Schmitt
2025-10-28 13:30 Alan Schmitt
2025-10-21 9:17 Alan Schmitt
2025-10-14 9:56 Alan Schmitt
2025-10-07 12:22 Alan Schmitt
2025-09-30 13:12 Alan Schmitt
2025-09-23 13:23 Alan Schmitt
2025-09-16 11:52 Alan Schmitt
2025-09-09 12:30 Alan Schmitt
2025-09-02 12:23 Alan Schmitt
2025-08-26 12:34 Alan Schmitt
2025-08-19 12:20 Alan Schmitt
2025-08-12 15:32 Alan Schmitt
2025-08-05 8:17 Alan Schmitt
2025-07-29 9:36 Alan Schmitt
2025-07-22 12:07 Alan Schmitt
2025-07-15 17:14 Alan Schmitt
2025-07-08 12:45 Alan Schmitt
2025-07-01 11:16 Alan Schmitt
2025-06-24 14:02 Alan Schmitt
2025-06-17 6:44 Alan Schmitt
2025-06-10 13:36 Alan Schmitt
2025-06-03 9:19 Alan Schmitt
2025-05-27 9:22 Alan Schmitt
2025-05-20 11:52 Alan Schmitt
2025-05-13 9:40 Alan Schmitt
2025-05-06 7:24 Alan Schmitt
2025-04-29 8:39 Alan Schmitt
2025-04-22 11:50 Alan Schmitt
2025-04-15 9:51 Alan Schmitt
2025-04-08 13:14 Alan Schmitt
2025-04-01 9:12 Alan Schmitt
2025-03-25 8:06 Alan Schmitt
2025-03-18 10:18 Alan Schmitt
2025-03-11 15:00 Alan Schmitt
2025-03-04 14:01 Alan Schmitt
2025-02-25 10:36 Alan Schmitt
2025-02-18 14:33 Alan Schmitt
2025-02-11 7:17 Alan Schmitt
2025-02-04 12:05 Alan Schmitt
2025-01-28 13:24 Alan Schmitt
2025-01-21 15:47 Alan Schmitt
2025-01-14 8:20 Alan Schmitt
2025-01-07 17:26 Alan Schmitt
2024-12-31 8:03 Alan Schmitt
2024-12-24 8:55 Alan Schmitt
2024-12-17 13:05 Alan Schmitt
2024-12-10 13:48 Alan Schmitt
2024-12-03 14:44 Alan Schmitt
2024-11-26 8:30 Alan Schmitt
2024-11-19 6:52 Alan Schmitt
2024-11-12 15:00 Alan Schmitt
2024-11-05 13:22 Alan Schmitt
2024-10-29 13:30 Alan Schmitt
2024-10-22 12:42 Alan Schmitt
2024-10-15 13:31 Alan Schmitt
2024-10-08 10:56 Alan Schmitt
2024-10-01 13:37 Alan Schmitt
2024-09-24 13:18 Alan Schmitt
2024-09-17 14:02 Alan Schmitt
2024-09-10 13:55 Alan Schmitt
2024-09-03 8:24 Alan Schmitt
2024-08-27 9:02 Alan Schmitt
2024-08-20 9:29 Alan Schmitt
2024-08-13 13:21 Alan Schmitt
2024-08-06 9:00 Alan Schmitt
2024-07-30 13:26 Alan Schmitt
2024-07-23 13:30 Alan Schmitt
2024-07-16 6:24 Alan Schmitt
2024-07-09 9:19 Alan Schmitt
2024-07-02 7:30 Alan Schmitt
2024-06-25 13:58 Alan Schmitt
2024-06-18 13:05 Alan Schmitt
2024-06-11 15:04 Alan Schmitt
2024-06-04 13:26 Alan Schmitt
2024-05-28 9:07 Alan Schmitt
2024-05-21 13:07 Alan Schmitt
2024-05-14 13:25 Alan Schmitt
2024-05-07 7:30 Alan Schmitt
2024-04-30 7:22 Alan Schmitt
2024-04-23 12:17 Alan Schmitt
2024-04-16 12:00 Alan Schmitt
2024-04-09 9:15 Alan Schmitt
2024-04-02 14:31 Alan Schmitt
2024-03-26 6:32 Alan Schmitt
2024-03-19 15:09 Alan Schmitt
2024-03-12 10:31 Alan Schmitt
2024-03-05 14:50 Alan Schmitt
2024-02-27 13:53 Alan Schmitt
2024-02-20 9:12 Alan Schmitt
2024-02-13 8:42 Alan Schmitt
2024-02-06 15:14 Alan Schmitt
2024-01-30 14:16 Alan Schmitt
2024-01-23 9:45 Alan Schmitt
2024-01-16 10:01 Alan Schmitt
2024-01-09 13:40 Alan Schmitt
2024-01-02 8:59 Alan Schmitt
2023-12-26 10:12 Alan Schmitt
2023-12-19 10:10 Alan Schmitt
2023-12-12 10:20 Alan Schmitt
2023-12-05 10:13 Alan Schmitt
2023-11-28 9:09 Alan Schmitt
2023-11-21 7:47 Alan Schmitt
2023-11-14 13:42 Alan Schmitt
2023-11-07 10:31 Alan Schmitt
2023-10-31 10:43 Alan Schmitt
2023-10-24 9:17 Alan Schmitt
2023-10-17 7:46 Alan Schmitt
2023-10-10 7:48 Alan Schmitt
2023-10-03 13:00 Alan Schmitt
2023-09-19 8:54 Alan Schmitt
2023-09-12 13:21 Alan Schmitt
2023-09-05 9:00 Alan Schmitt
2023-08-29 13:04 Alan Schmitt
2023-08-22 9:20 Alan Schmitt
2023-08-15 16:33 Alan Schmitt
2023-08-08 8:53 Alan Schmitt
2023-08-01 7:13 Alan Schmitt
2023-07-25 8:45 Alan Schmitt
2023-07-11 8:45 Alan Schmitt
2023-07-04 9:18 Alan Schmitt
2023-06-27 8:38 Alan Schmitt
2023-06-20 9:52 Alan Schmitt
2023-06-13 7:09 Alan Schmitt
2023-06-06 14:22 Alan Schmitt
2023-05-30 15:43 Alan Schmitt
2023-05-23 9:41 Alan Schmitt
2023-05-16 13:05 Alan Schmitt
2023-05-09 11:49 Alan Schmitt
2023-05-02 8:01 Alan Schmitt
2023-04-25 9:25 Alan Schmitt
2023-04-18 8:50 Alan Schmitt
2023-04-11 12:41 Alan Schmitt
2023-04-04 8:45 Alan Schmitt
2023-03-28 7:21 Alan Schmitt
2023-03-21 10:07 Alan Schmitt
2023-03-14 9:52 Alan Schmitt
2023-03-07 9:02 Alan Schmitt
2023-02-28 14:38 Alan Schmitt
2023-02-21 10:19 Alan Schmitt
2023-02-14 8:12 Alan Schmitt
2023-02-07 8:16 Alan Schmitt
2023-01-31 6:44 Alan Schmitt
2023-01-24 8:57 Alan Schmitt
2023-01-17 8:37 Alan Schmitt
2022-11-29 14:53 Alan Schmitt
2022-09-27 7:17 Alan Schmitt
2022-09-20 14:01 Alan Schmitt
2022-09-13 8:40 Alan Schmitt
2022-08-23 8:06 Alan Schmitt
2022-08-16 8:51 Alan Schmitt
2022-08-09 8:02 Alan Schmitt
2022-08-02 9:51 Alan Schmitt
2022-07-26 17:54 Alan Schmitt
2022-07-19 8:58 Alan Schmitt
2022-07-12 7:59 Alan Schmitt
2022-07-05 7:42 Alan Schmitt
2022-06-28 7:37 Alan Schmitt
2022-06-21 8:06 Alan Schmitt
2022-06-14 9:29 Alan Schmitt
2022-06-07 10:15 Alan Schmitt
2022-05-31 12:29 Alan Schmitt
2022-05-24 8:04 Alan Schmitt
2022-05-17 7:12 Alan Schmitt
2022-05-10 12:30 Alan Schmitt
2022-05-03 9:11 Alan Schmitt
2022-04-26 6:44 Alan Schmitt
2022-04-19 5:34 Alan Schmitt
2022-04-12 8:10 Alan Schmitt
2022-04-05 11:50 Alan Schmitt
2022-03-29 7:42 Alan Schmitt
2022-03-22 13:01 Alan Schmitt
2022-03-15 9:59 Alan Schmitt
2022-03-01 13:54 Alan Schmitt
2022-02-22 12:43 Alan Schmitt
2022-02-08 13:16 Alan Schmitt
2022-02-01 13:00 Alan Schmitt
2022-01-25 12:44 Alan Schmitt
2022-01-11 8:20 Alan Schmitt
2022-01-04 7:56 Alan Schmitt
2021-12-28 8:59 Alan Schmitt
2021-12-21 9:11 Alan Schmitt
2021-12-14 11:02 Alan Schmitt
2021-11-30 10:51 Alan Schmitt
2021-11-16 8:41 Alan Schmitt
2021-11-09 10:08 Alan Schmitt
2021-11-02 8:50 Alan Schmitt
2021-10-19 8:23 Alan Schmitt
2021-09-28 6:37 Alan Schmitt
2021-09-21 9:09 Alan Schmitt
2021-09-07 13:23 Alan Schmitt
2021-08-24 13:44 Alan Schmitt
2021-08-17 6:24 Alan Schmitt
2021-08-10 16:47 Alan Schmitt
2021-07-27 8:54 Alan Schmitt
2021-07-20 12:58 Alan Schmitt
2021-07-06 12:33 Alan Schmitt
2021-06-29 12:24 Alan Schmitt
2021-06-22 9:04 Alan Schmitt
2021-06-01 9:23 Alan Schmitt
2021-05-25 7:30 Alan Schmitt
2021-05-11 14:47 Alan Schmitt
2021-05-04 8:57 Alan Schmitt
2021-04-27 14:26 Alan Schmitt
2021-04-20 9:07 Alan Schmitt
2021-04-06 9:42 Alan Schmitt
2021-03-30 14:55 Alan Schmitt
2021-03-23 9:05 Alan Schmitt
2021-03-16 10:31 Alan Schmitt
2021-03-09 10:58 Alan Schmitt
2021-02-23 9:51 Alan Schmitt
2021-02-16 13:53 Alan Schmitt
2021-02-02 13:56 Alan Schmitt
2021-01-26 13:25 Alan Schmitt
2021-01-19 14:28 Alan Schmitt
2021-01-12 9:47 Alan Schmitt
2021-01-05 11:22 Alan Schmitt
2020-12-29 9:59 Alan Schmitt
2020-12-22 8:48 Alan Schmitt
2020-12-15 9:51 Alan Schmitt
2020-12-01 8:54 Alan Schmitt
2020-11-03 15:15 Alan Schmitt
2020-10-27 8:43 Alan Schmitt
2020-10-20 8:15 Alan Schmitt
2020-10-06 7:22 Alan Schmitt
2020-09-29 7:02 Alan Schmitt
2020-09-22 7:27 Alan Schmitt
2020-09-08 13:11 Alan Schmitt
2020-09-01 7:55 Alan Schmitt
2020-08-18 7:25 Alan Schmitt
2020-07-28 16:57 Alan Schmitt
2020-07-21 14:42 Alan Schmitt
2020-07-14 9:54 Alan Schmitt
2020-07-07 10:04 Alan Schmitt
2020-06-30 7:00 Alan Schmitt
2020-06-16 8:36 Alan Schmitt
2020-06-09 8:28 Alan Schmitt
2020-05-19 9:52 Alan Schmitt
2020-05-12 7:45 Alan Schmitt
2020-05-05 7:45 Alan Schmitt
2020-04-28 12:44 Alan Schmitt
2020-04-21 8:58 Alan Schmitt
2020-04-14 7:28 Alan Schmitt
2020-04-07 7:51 Alan Schmitt
2020-03-31 9:54 Alan Schmitt
2020-03-24 9:31 Alan Schmitt
2020-03-17 11:04 Alan Schmitt
2020-03-10 14:28 Alan Schmitt
2020-03-03 8:00 Alan Schmitt
2020-02-25 8:51 Alan Schmitt
2020-02-18 8:18 Alan Schmitt
2020-02-04 8:47 Alan Schmitt
2020-01-28 10:53 Alan Schmitt
2020-01-21 14:08 Alan Schmitt
2020-01-14 14:16 Alan Schmitt
2020-01-07 13:43 Alan Schmitt
2019-12-31 9:18 Alan Schmitt
2019-12-17 8:52 Alan Schmitt
2019-12-10 8:21 Alan Schmitt
2019-12-03 15:42 Alan Schmitt
2019-11-26 8:33 Alan Schmitt
2019-11-12 13:21 Alan Schmitt
2019-11-05 6:55 Alan Schmitt
2019-10-15 7:28 Alan Schmitt
2019-09-03 7:35 Alan Schmitt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m2o6jvundg.fsf@petitepomme.net \
--to=alan.schmitt@polytechnique.org \
--cc=caml-list@inria.fr \
--cc=lwn@lwn.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox