[Caml-list] Attn: Development Editor, Latest OCaml Weekly News

Alan Schmitt
2024-08-13T13:21:23Z

[-- Attachment #1: Type: text/plain, Size: 5033 bytes --]

Hello

Here is the latest OCaml Weekly News, for the week of August 06 to 13,
2024.

Table of Contents
─────────────────

MlFront - A Java-like package system for OCaml
First release of hector
Dune dev meeting
Other OCaml News
Old CWN

MlFront - A Java-like package system for OCaml
══════════════════════════════════════════════

Archive:
<https://discuss.ocaml.org/t/ann-mlfront-a-java-like-package-system-for-ocaml/15072/4>

Continuing this thread, jbeckford announced
───────────────────────────────────────────

I've added a third post: [https://diskuv.com/mlfront/overview-3/]

In it I describe a small but useful /reference build system/ for
MlFront which can take packages like:

┌────
│ .
│ ├── AcmeWidgets_Std/
│ │ └── A.ml
│ └── BobBuilder_Std/
│ └── B.ml
└────

and produce standalone build scripts that can be committed to source
control:

┌────
│ $ mlfront-boot -native -o buildscript
│
│ $ ./buildscript.sh # .\buildscript.cmd is also created
│
│ $ target/BobBuilder_Std.B
│ I am an A!
│ I am a B!
└────

On a related note, I've begun to implement a small part of
<https://gallium.inria.fr/~scherer/namespaces/spec.pdf>. It is not
strictly required but [Namespaces.mli] will be very helpful for
upgrading existing projects to `MlFront'-style packages without
changing code. That will be for a future (not soon) post.

[https://diskuv.com/mlfront/overview-3/]
<https://diskuv.com/mlfront/overview-3/>

[Namespaces.mli]
<https://gitlab.com/dkml/build-tools/MlFront/-/blob/f1f6e6d073500febb5c9e429212c8bdaaa177c35/src/MlFront_Codept/Namespaces.mli>

First release of hector
═══════════════════════

Archive:
<https://discuss.ocaml.org/t/ann-first-release-of-hector/15099/1>

François Pottier announced
──────────────────────────

It is my pleasure to announce the first release of `hector', an OCaml
library that offers /vectors/ (also known as dynamic arrays, or
resizeable arrays).

To install it, type `opam update && opam install hector'.

`hector' offers *polymorphic vectors*, where the type of the elements
is a parameter, *monomorphic vectors*, where the type of the elements
is fixed, and *integer vectors*, a special case of monomorphic
vectors.

`hector''s vectors are *not thread-safe* and *do not include a
protection against memory leaks*. Compared with the `Dynarray' module
in OCaml's standard library, `hector''s polymorphic and monomorphic
vectors are *slightly faster*, and `hector''s integer vectors are
*significantly faster*. `hector' offers fast (but dangerous) *unsafe
access operations*, namely `unsafe_get', `unsafe_set', and
`unsafe_borrow'. For a more detailed overview, see the
[documentation].

[documentation] <https://cambium.inria.fr/~fpottier/hector/doc/hector/>

Dune dev meeting
════════════════

Archive: <https://discuss.ocaml.org/t/ann-dune-dev-meeting/14994/9>

Continuing this thread, Marek Kubica announced
──────────────────────────────────────────────

Thanks for everyone who joined today! The [meeting minutes] are online
and the next meeting will be in two weeks, 21st of August at 10:00
(AM) CEST.

[meeting minutes]
<https://github.com/ocaml/dune/wiki/dev-meeting-2024-08-07>

Other OCaml News
════════════════

From the ocaml.org blog
───────────────────────

Here are links from many OCaml blogs aggregated at [the ocaml.org
blog].

• [The Guide to Software Verification with Frama-C is available]

[the ocaml.org blog] <https://ocaml.org/blog/>

[The Guide to Software Verification with Frama-C is available]
<https://frama-c.comhttps//link.springer.com/book/10.1007/978-3-031-55608-1>

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 #2: Type: text/html, Size: 14726 bytes --]