Hello Here is the latest OCaml Weekly News, for the week of April 22 to 29, 2025. Table of Contents ───────────────── dream-html, pure-html 3.10.0 and 3.10.1 State of OCaml Platform on Windows Upgrading Semgrep from OCaml 4 to OCaml 5 + dynamic_gc utility Typesafe complicated combinations Other OCaml News Old CWN dream-html, pure-html 3.10.0 and 3.10.1 ═══════════════════════════════════════ Archive: Yawar Amin announced ──────────────────── Happy to announce a couple of releases of [dream-html]: 3.10.0: add support for [RSS/Atom] markup; add ability to handle [multiple] nested form values; [concatenate] HTML nodes with a separator node between them; add support for [popovers] and [Declarative Shadow DOM] markup. 3.10.1: use single quotes for attributes which must contain JSON values, like htmx's [hx-vals]. [dream-html] [RSS/Atom] [multiple] [concatenate] [popovers] [Declarative Shadow DOM] [hx-vals] State of OCaml Platform on Windows ══════════════════════════════════ Archive: Leandro Ostera announced ──────────────────────── Hello folks :waving_hand: We're happy to share the first version of the State of the OCaml Platform on Windows document with you. Please find the document here: . As part of the [First-Class Windows] project, we've been assessing the state of OCaml on Windows. This document is a summary of our investigation, including our consultations with individuals involved in Windows-related work. This document started internally at Tarides and quickly included major contributors and users of OCaml on Windows for its drafting and review stages. Thank you to @jbeckford, @klakplok, @Vincent_Balat, @Rucikir, @lambda_foo, @rikusilvola, @kayceesrk, @dra27, @Isabella, @rjbou, @avsm, @kentookura, @oandrieu, @shonfeder, @sabine, and everyone else at Tarides for helping us shape and review this document! :folded_hands: The immediate call to action for you is to give us your inputs and thoughts, challenge it and help us make it better. You can do this directly on that document, or by quoting into this thread. We'll have a window of 8 weeks to allow for this to happen. After that we will move this into the OCaml Platform section of OCaml.org to use as a reference and keep it updated over time. Happy coding! :two_hump_camel: / @sudha & @leostera on behalf of Tarides [First-Class Windows] Upgrading Semgrep from OCaml 4 to OCaml 5 + dynamic_gc utility ══════════════════════════════════════════════════════════════ Archive: Continuing this thread, Nat Mote announced ────────────────────────────────────────── I've just released a new version that includes the following module: ┌──── │ module Config : sig │ (** Produces a simple config that will set space_overhead to 120, the default, │ * when the size of the major heap is below the given threshold. When the heap │ * is larger than the given threshold, space_overhead will be set to 80. *) │ val simple: threshold_mb:int -> config │ end └──── That will make the utility even easier to configure while still allowing the application developer to set a memory threshold that is relevant to them. Typesafe complicated combinations ═════════════════════════════════ Archive: rand announced ────────────── Heya everyone – I've [written a blogpost] based on a recent experience adding typesafety to the `pmmd' codebase – handling a lot of different data and functions that needs to be combined in the right ways. In it I make use of phantom types and OCamls module system to express the invariants - which I find is a nice set of typesystem features to express complicated relations in a relatively simple but efficient and scaleable way. Also, I think interesting design patterns can emerge from this way of working. Let me know here if you have any questions or comments Thanks (: [written a blogpost] Other OCaml News ════════════════ From the ocaml.org blog ─────────────────────── Here are links from many OCaml blogs aggregated at [the ocaml.org blog]. • [SPF, DKIM, DMARC and ARC] • [Feature Parity Series: Restoring the MSVC Port] [the ocaml.org blog] [SPF, DKIM, DMARC and ARC] [Feature Parity Series: Restoring the MSVC Port] 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] [the archive] [RSS feed of the archives] [caml-list] [Alan Schmitt]