Previous week   Up   Next week

Here is the latest Caml Weekly News, week 26 february to 05 march, 2002. 

1) ARM OCaml cross-compiler
2) WDialog-2.00-test2 released
3) The DLL-hell of O'Caml
4) Report 0.3 
5) Tools from the C-- Project

1) ARM OCaml cross-compiler
Christian Gillot announced:

As several people show an interest for it I put on the
web a ARM OCaml cross-compiler (ie iPAQ, YOPI, Zaurus, etc).
You can get it on the following URL :

In a nutshell, it's a tar cvzf of the cross-compiler I compiled.
It also contains lablgtk. The following step is to write some
documentation and more importantly a Makefile that would allow
one to compile easily a OCaml cross-compiler.
If you got any problem, just drop me a mail.

2) WDialog-2.00-test2 released
Gerd Stolpmann announced:


I have just released the second test release of WDialog-2.00, the web
application framework.

The tarball is available on the sourceforge project page:

This test release fixes problems with the build process, and includes
corrections for a number of smaller bugs.

On the homepage (, there are now answers
for Frequently Asked Questions.

3) The DLL-hell of O'Caml
Mattias Waldau wondered:


I wanted to try WDialog made by Gerd Stolpmann.

Gerd is one of the more productive Ocaml programmers, 
who generates good and documentated libraries.

On my linux-machine I use the CDK with ocaml-3.03ALPHA.

This is the installation history:
1. Needs Ocaml 3.03 -> updated CDK using CVS (there are no tarballs
but I have a broadband-connection).
2. Ocamlnet missing -> downloaded ocamlnet-0.92
3. Failed to install ocamlnet, since the PCRE in the CDK seems to
be to old.
4. Installed a new PCRE.
5. Tried to install ocamlnet again, however failed with 
	"unbound type constructor Mimestring.s_param"

   Probably something else is too old...I got bored...
   ...never got back to try to install WDialog....


The above history is the reason I started using the CDK,
in many cases using libraries that depend on other
libraries is almost impossible without the CDK. Too much 
time is spent on downloading and compiling.

I know 3 solutions to the problem:
1. CDK
2. Gerd invented findlib to solve the above problem.
3. Adding good packages to the standard distribution,
   so that mostly packages doesn't depend on other
   packages, but on packages in the standard
   distribution. (But very few if any new packages
   are added to the distribution.)

There are probably more solutions. I would call this 
problem a show stopper, since it prevents user to use
good libraries. 

We need a solution. Maybe a CPAN-like solution? 
In the Ocaml-CPAN it could either be source code, or
compile binaries (I can live without native code, at
least when experimenting with other peoples libraries.)

(there are many answers to this message. The archived thread starts at: )

4) Report 0.3 
Maxence Guesdon announced:


Report 0.3 is released.

Changes are :
- split of executables and libs to isolate graphical interface,
- use of Daniel de Rauglaudre's IoXML to store the document
  descriptions (translation to and from binary format is available).

Report is a tool allowing the description of the structure of
 an XML document and the way to fill it at runtime.

Enjoy !

5) Tools from the C-- Project
Christian Lindig announced:

The C-- compiler project releases internal development tools.


OCamlError 1.0

When an Objective Caml byte code program dies with an uncaught exception
or assertion failure, it can hint at the origin of the exception with a
stack trace. A stack trace lists module names and source code positions
in modules as character offsets from the beginning of the corresponding
source file. Because editors support navigation best by line and column
numbers, tracking down the origin of an assertion is somewhat tedious.
OCamlError reads a stack trace and annotates it with readable and
editor-friendly source code positions. When source code preprocessors
introduce CPP-style #line directives, these are also honored.

OCamlError is implemented as a literate program with the Noweb tool
( and comes with everything to
compile it from source code. The documentation is in HTML and Unix
manual page format. OCamlError is released into the public domain.

OCamlBurg 1.0

OCamlBurg is a code generator generator: it takes a pattern matching
specification and generates a dynamic-programming algorithm that
implements the matching.  Unlike an ML pattern, a Burg pattern covers
only part of a tree. Dynamic programming finds at run time the cheapest
way to cover a tree with patterns.  The typical application is inside a
compiler to translate an expression tree into code that evaluates the
expression at run time. OCamlBurg is inspired by Fraser, Hanson, and
Proebsting's IBurg implementation for C

Like OCamlError, OCamlBurg is implemented as a literate program and
comes with everything to build it from the source. It is released into
the public domain as well.

Mk from Plan 9

Mk is a successor to Make designed by Andrew Hume. It is used at Bell
Labs and in Plan 9.  While conceptually close to Make, it has resisted
feature bloat and shines at the details.  In particular, variable
handling in Mk is unified with the sh(1) shell which is typically used
to execute actions.  The result are simple and understandable mkfiles,
the equivalent to Makefiles.

Mk is distributed as C source code that was extracted from the Plan 9
source release and ported to Unix. It comes with documentation in PDF
format and a manual page. Mk is released under the Nuova Open Source


Alan Schmitt