Previous week Up Next week


Here is the latest Caml Weekly News, for the week of September 04 to 11, 2012.

  1. existing implementation of data structures for storing points/doing nearest neighbour search in OCaml
  2. [CUFP 2012] Birds of a Feather sessions
  3. Uunf 0.9.0 and Uucd 0.9.0
  4. Other Caml News

existing implementation of data structures for storing points/doing nearest neighbour search in OCaml


Francois Berenger asked:
I was looking for a few data structures to accelerate some geometric
operations on 3D point sets. I was happily surprised. The harvest was

kd-tree in OCaml:

R-tree in OCaml:

Vantage point tree in OCaml:
Siraaj Khandkar then added:

[CUFP 2012] Birds of a Feather sessions


Ashish Agarwal announced:
Birds of a Feather sessions (BOFs)

Commercial Users of Functional Programming Workshop (CUFP 2012)

Copenhagen, Denmark, September 13 - 15

CUFP 2012 will again include Birds of a Feather sessions as in
previous years. BoFs provide a place for our community to gather
informally and reach consensus on matters of importance. Any CUFP
attendee can propose a BoF session, and grab one of the spare rooms in
the evening slots below. Attendance in the evening is open to all.

BoF sessions facilitate ad-hoc discussions and provide a place to
gather and start off the chat, before moving on during the evening to
a local restaurant or pub. There is no deadline for proposing a
session---you can even request a room on the day---but we encourage
you to do so at the earliest possible time to help us with planning
and to publicize your proposed discussion. Attendees are also free to
show up even if you have not confirmed, but again earlier confirmation
will help us with planning.

Please see for details on how to propose a
BoF session or confirm attendance at one of them.

General information on CUFP 2012 can be found at The conference is co-located with
ICFP. You can register for CUFP at the main ICFP website

Uunf 0.9.0 and Uucd 0.9.0


Daniel Bünzli announced:
I'd like to announce the following two modules. First Uunf:

Uunf is an OCaml module for normalizing Unicode text. It supports all
Unicode normalization forms and is independent from any IO
mechanism or Unicode text data structure. Text can be processed
without a complete in-memory representation.

Uunf is made of a single independent module and distributed under the
BSD3 license.

Project homepage:
API doc & examples:

Note that if you use `findlib` to install you'll need Uutf because it used by

the sample programs, but using Uunf itself doesn't actually require Uutf.

For those what wonder what this is about, Unicode normal forms are
needed if you want to test Unicode strings for equality via binary
equality or order them in a textually *unmeaningful* way via
binary comparison e.g. for Set.Make or Map.Make.

This is because in Unicode there is more than one way to represent the
same user perceived character, e.g. é can be represented by the sequence
<U+00E9> (precomposed character é) or <U+0065, U+0301> (character e
followed by non-spacing mark ´). Normalizing all your strings to a
given normal form ensures that all equivalent subsequences in them
are represented the same way.

The second module is Uucd:

Uucd is an OCaml module to decode the data of the Unicode Character
Database from its XML representation. It provides high-level (but
not necessarily efficient) access to the data so that efficient
can be extracted.

Uucd is made of a single module, depends on Xmlm and is
distributed under the BSD3 license.

Project home page:
API doc:

If you want to install the modules via odb here are a few line
you can add to your odb package file:

(these things are still not in oasis-db because uploads of .tbz is
currently broken)

Other Caml News

From the ocamlcore planet blog:
Thanks to Alp Mestan, we now include in the Caml Weekly News the links to the
recent posts from the ocamlcore planet blog at &lt;;.

Biocaml: The OCaml Bioinformatics Library:

The Opa Framework Hits a Major Milestone:

Uucd 0.9.0:

Uunf 0.9.0:

OCaml MySQL Protocol 0.6 available:

Uunf 0.9.0:

Uucd 0.9.0:


A safe but strange way of modifying OCaml compiler:

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 online.

Alan Schmitt