Previous week Up Next week


Here is the latest Caml Weekly News, for the week of October 30 to November 06, 2007.

  1. Marionnet 0.50.0
  2. Jobs with the F# team
  3. OCaml and Leopard
  4. Smoke Vector Graphics: source code licenses for sale
  5. CamlPDF v0.2

Marionnet 0.50.0


Luca Saiu announced:
We are happy to announce the first public release of Marionnet, a 
virtual network laboratory. 

Marionnet allows users to simulate on a single host machine a complete 
network made of virtual computers, hubs, switches and routers connected 
by Ethernet cables; any single virtual device can be created, destroyed, 
modified, booted, shut down, paused or resumed at any time, while the 
rest of the network is running. It's also possible to simulate defects 
in network components, with a very fine level of control. 

The virtual network can also interoperate with the host machine network, 
using the 'plug' device. 

Virtual computers run unmodified GNU/Linux x86 application binaries on 
the Debian distribution we provide; graphical application relying on X 
are supported. Support for other non-debian x86 GNU/Linux distributions 
is easy to add. 

As the application is primarily targeted to students it features a very 
intuitive graphical user interface. 

The application logic is fully implemented in OCaml (see [1]), but 
Marionnet relies on User Mode Linux [2] and Virtual Distributed Network 
[3] for the low-level simulation part. We wish to thank Jeff Dike and 
Renzo Davoli for these fine pieces of software. 

The download page also contains a DVD image with Marionnet 
pre-configured on a 'live' GNU/Linux system, directly running from the 
DVD without need for installation. 

Marionnet is free software, released under the GNU General Public 
License. It comes with absolutely no warranty. 

Marionnet is written by Jean-Vincent Loddo 
( and Luca Saiu 
(, and is sponsored by Université 
Paris 13 as an e-learning project. 

Home page: 


Luca Saiu 

[1] Status Report: Marionnet --- How to Implement a Virtual Network 
Laboratory in Six Months and Be Happy 
Jean-Vincent Loddo, Luca Saiu 
ACM SIGPLAN Workshop on ML, Freiburg, 2007. 

[2] User Mode Linux 

[3] Virtual Distributed Ethernet

Jobs with the F# team


Don Syme announced:
We have two positions open with the F# team, probably based in Redmond though 
Cambridge UK may be an option. If you’re interested then check out these job 
postings :)



OCaml skills are extremely welcome, along with the other skills mentioned in 
the above posts. Compatibility with core OCaml will remain an important goal 
as we move forward with F#, and we hope to expand our efforts in this regard.

OCaml and Leopard


Joel Reymont said and Nathaniel Gray added:
> I'm having trouble compiling OCaml from CVS on Mac OSX Leopard. 
> Any suggestions on how to troubleshoot this? 

I got the same problem building 3.10 on godi. 

> + cd asmrun 
> + make all meta.o dynlink.o 
> ... 
> gcc -I../byterun -DCAML_NAME_SPACE -DNATIVE_CODE -DTARGET_i386 - 
> DSYS_macosx  -O -Wall -D_FILE_OFFSET_BITS=64 -D_REENTRANT   -c -o 
> signals_asm.o signals_asm.c 
> signals_asm.c: In function 'segv_handler': 
> signals_asm.c:193: error: dereferencing pointer to incomplete type 
> signals_asm.c:193: error: dereferencing pointer to incomplete type 
> signals_asm.c: In function 'caml_init_signals': 
> signals_asm.c:241: error: storage size of 'stk' isn't known 
> signals_asm.c:241: warning: unused variable 'stk' 
> make: *** [signals_asm.o] Error 1 

This makes me think maybe there's a system header file that's moved, 
though I haven't looked in any detail yet.
Ralph Douglass first said then added:
> sudo su - 
> cd ~/<you>/Downloads/godi-bootstrap-20061228 
> ./bootstrap --prefix /opt/local/godi 
> export PATH=/opt/local/godi/bin:/opt/local/godi/sbin:$PATH 
> ./boostrap_stage2

Oh right, edit your /opt/local/godi/etc/godi.conf for 3.10 between bootstrap 
and bootstrap_stage2. 
Gordon Henriksen also said:
Compiling prior releases, I advise using setenv   

For top-of-tree, see 

I'd appreciate if someone could test the change on x64.

Smoke Vector Graphics: source code licenses for sale


Jon Harrop announced:
We are releasing our high-performance hardware-accelerated vector graphics 
software under a commercial source code license alongside the existing free 

Until the license is put on the site, e-mail me if you'd like to read a copy. 

As an aside, several users asked us to provide bytecode versions for use with 
the latest OCaml 3.10 as well as 3.09 (still the latest in Debian testing). 
Our download statistics for last month show 94 hits for the 3.09 version and 
56 hits for the 3.10 version, so many people seem to be pushing ahead with 
the latest technology!

CamlPDF v0.2


John Whitington announced:
CamlPDF is a library for reading, writing and manipulating PDF files 
and data. It is released under a BSD-style licence. 

New/updated Modules: 

Pdftext/Glyphlist/Fonttables: fonts and Unicode text extraction 
Pdfcrypt: Encryption and Decryption (40bit, 128bit and AES) 
Pdfimages: Preliminary support for image extraction 
Pdfwrite: Updated to support encryption and linearization 

Also, many bug fixes and new functions. PDF files it can't read 
are now very few and far between. There are small API differences, 
though most are limited to the addition of extra optional arguments. 

CamlPDF forms the basis of the cPDF Command Line Toolkit 

Thanks go to Haoyang Wang for a bug fix to string parsing in Pdfread.

Using folding to read the cwn in vim 6+

Here is a quick trick to help you read this CWN if you are viewing it using vim (version 6 or greater).

:set foldmethod=expr
:set foldexpr=getline(v:lnum)=~'^=\\{78}$'?'&lt;1':1

If you know of a better way, please let me know.

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