Previous week Up Next week


Here is the latest Caml Weekly News, for the week of 16 to 23 August, 2005.

  1. Objective Caml release 3.08.4
  2. OCaml Expert Needed
  3. ocaml on palms...
  4. Neko 1.0
  5. type abbreviation for open polymorphic variants?
  6. recursive polymorphic variants?
  7. In need of serious help regarding threading
  8. Compilation speed of modules/functors
  9. ocamlscript 1.0

Objective Caml release 3.08.4


Damien Doligez announced:
We have the pleasure of announcing the release of

              Objective Caml version 3.08.4

This is mostly a bug-fix release; see below for the list of
changes.  Upgrading is not urgent unless you have problems with
one of the bugs listed below.

Please note that we do not guarantee binary compatibility with
previous versions (including 3.08.3).

Only the source is available for the moment.  We will provide some
binaries in the near future; in the meantime, the binaries on the
Web page are still for OCaml 3.08.3.

OCaml 3.08.4 is available at

-- Damien Doligez for the Caml Team

Objective Caml 3.08.4:

New features:
- configure: find X11 config in some 64-bit Linux distribs
- ocamldoc: (**/**) can be canceled with another (**/**) PR#3665
- graphics: added resize_window
- graphics: check for invalid arguments to drawing primitives PR#3595
- lablbrowser: use windows subsystem on mingw

Bug fixes:
- ocamlopt: code generation problem on AMD64 PR#3640
- wrong code generated for some classes PR#3576
- fatal error when compiling some OO code PR#3745
- problem with comparison on constant constructors PR#3608
- better detection of cycles when using -rectypes
- missing case of module equality PR#3738
- better error messages for unbound type variables
- stack overflow while printing type error message PR#3705
- assert failure when typing some classes PR#3638
- bug in type_approx
- better error messages related to type variance checking
- camlp4: cryptic error message PR#3592
- camlp4: line numbers in multi-line antiquotations PR#3549
- camlp4: problem with make depend
- camlp4: parse error with :> PR#3561
- camlp4: ident conversion problem with val/contents/contents__
- camlp4: several small parsing problems PR#3688
- ocamldebug: handling of spaces in executable file name PR#3736
- emacs-mode: problem when caml-types-buffer is deleted by user PR#3704
- ocamldoc: extra backslash in ocamldoc man page PR#3687
- ocamldoc: improvements to HTML display PR#3698
- ocamldoc: escaping of @ in info files
- ocamldoc: escaping of . and \ in man pages PR#3686
- ocamldoc: better error reporting of misplaced comments
- graphics: fixed .depend file PR#3558
- graphics: segfault with threads and graphics PR#3651
- nums: several bugs: PR#3718, PR#3719, others
- nums: inline asm problems with gcc 4.0 PR#3604, PR#3637
- threads: problem with backtrace
- unix: problem with getaddrinfo PR#3565
- stdlib: documentation of Int32.rem and Int64.rem PR#3573
- stdlib: documentation of List.rev_map2 PR#3685
- stdlib: wrong order in Map.fold PR#3607
- stdlib: documentation of maximum float array length PR#3714
- yacc: avoid name capture for idents of the Parsing module
Aleksey Nogin then said:
I've compiled a number of binary packages of OCaml 3.08.4 (Fedora Core 
2, 3, and 4, Mandrake 10.1, Red Hat Enterprise Linux 4). They are 
available at

OCaml Expert Needed


Matt Wade announced:
Wanted: One OCaml Expert to do a technical review on an upcoming book. Pay  
is decent for the amount of time involved. You'll also receive a full page  
acknowledgement in the book (with picture if you like) and a copy of the  
book to use as a business card.

If you are interested, please contact me off list with your qualifications  
and resume.

--Matt Wade
Open Source Editor

ocaml on palms...


Michael Wohlwend asked and Eric Cooper answered:
> I know this question was asked some time ago, but those little
> devices are getting better every day :) The tungsten T3/T5 have
> 400MHz and 64MB, T5 has 256 MB ram; my sony has 200MHz and 32MB Ram
> (o.k., not much).  Could ocaml (not caml-light) run on such a T3 or
> T5?  Or just the runtime and cross-compiling?

OCaml runs fine on a Sharp Zaurus (400 MHz ARM with 64 MB of memory);
the ocaml interpreter runs on the device as well as cross-compiled native
code. But of course it's running Linux, not PalmOS.

Porting the runtime would be the main obstacle, I guess, depending on
how much POSIX-compatibility you can get from PalmOS.  I've also heard
rumors that Palm will move to an embedded Linux platform, so maybe the
answer is just to be patient.

Neko 1.0


Nicolas Cannasse announced:
I have released Neko 1.0 which is an intermediate programming language with
its virtual machine. The compiler is written in OCaml and the VM in C. It
might be interesting for people involved in language design, since Neko is
providing a common reusable runtime for language designers.
You can have a look at the documentation and download the release at

Comments and Questions are welcome,


type abbreviation for open polymorphic variants?


Norman Ramsey asked and Jacques Garrigue answered:
> I wish to define an abbreviation for the following type:
>          [> `Nil
>          | `Number   of float
>          | `String   of string
>          | `F