Broken OCaml bindings for libev

Other software I've written.

Libev is a high-performance event loop capable of using different kinds of polling mechanisms provided by different operating systems.

From this page you will find Objective Caml bindings to it.

There is a GC related issue that will eventually cause a segmentation violation, so it is not advisable to use this for anything except small hacks :-). The latest darcs version will crash if you comment out the line 'Hashtbl.add foo () v;' which keeps references to created event watchers, so solution should be near..

Download ocaml-ev v 0.4 and libev 3.0. An experimental combined package is also available (might require tweaking to compile); it features a CVS HEAD version from the libev repository, featuring asynchronous messaging. The produced library will statically contain libev. These two versions are likely to be merged to some point.

You may compile the bindings with "make all" and install via "sudo make libinstall". Ocaml-ev uses OCamlMakefile as its build system.

Changes v0.3v-0.4

Changes v0.2-v0.3

Changes v0.1-v0.2

Ocaml-ev has been successfully compiled with under Linux with ocamlc 3.10.1 and libev 3.0.

Documentation, example

You may also access the latest version (even with a web browser) from the Darcs repository. Enter

  darcs get
  darcs get
to fetch your copy.
Erkki Seppala
Last modified: Fri Mar 7 09:33:41 EET 2008