From: David Mentre <David.Mentre@inria.fr> To: lwn@lwn.net Subject: Attn: Development Editor, Latest Caml Weekly News Date: 02 Oct 2001 15:51:17 +0200 Hello, Here is the latest Caml Weekly News, week 26 sep. to 2 oct., 2001. Summary: 1) Initial port of ocaml for mingw 2) coca-ml (downcast of objects) 3) A new (and fast) regex library written entirely in ocaml 4) Graph libraries in O'Caml? 5) No CWN next week ====================================================================== 1) Initial port of ocaml for mingw ---------------------------------------------------------------------- "Art" proposed an initial port of ocaml to mingw (a minimal environment to run unix program under Windows). Quoting art: "Using code from the cvsnt project (just one function really), I was able to make an ocaml that does not depend on cygwin1.dll for windows. The bad news is that currently, it still depends on gcc -mno-cygwin, sh and make to build programs, etc. The good news is that it can produce programs that don't depend on cygwin1.dll as well (from ocamlc or ocamlopt). I have tested programs made with both ocamlc and ocamlopt, and used objdump to verify that they only depend on the microsoft C runtime." Full details can be found in his post: http://caml.inria.fr/archives/200109/msg00265.html ====================================================================== 2) coca-ml (downcast of objects) ---------------------------------------------------------------------- Emmanuel Chailloux announced: I have made a small extension to ocaml 3-02 called coca-ml and using camlp4 to allow "down cast" of objects between classes in relations of inheritence and sub-typing. This extension introduces two new syntatic constructions : expr instanceof c : is used to test if an object "is-a" element of c or a derived class of c and returns a boolean. cast expr from c1 to c2 : is used to cast an object to the type c2 : type of expr must be equal to c1 c2 must be a sub-type of c1 expr "is-a" c2 There is a dynamic test to check if expr "is-a" c2. If not a exception is raised. coca-ml home page is : http://www.pps.jussieu.fr/~emmanuel/Public/Dev/coca-ml/index-en.html Please send the bug reports or your remarks to Emmanuel.Chailloux@pps.jussieu.fr ====================================================================== 3) A new (and fast) regex library written entirely in ocaml ---------------------------------------------------------------------- Jerome Vouillon annnounced: I've started to write a regular expression library. It supports several styles of regular expressions: - Perl-style regular expressions; - Posix extended regular expressions; - Emacs-style regular expressions; - Shell-style file globbing It is also possible to build regular expressions by combining simpler regular expressions. The library is still under developpement, but already quite usable. The most notable missing features are back-references and look-ahead/look-behind assertions. I would greatly appreciate your comments about the library (and, in particular, about its API). Contributions and bug reports are also welcome. The library can be downloaded from http://sourceforge.net/projects/libre/ The library seems to be pretty fast when compiled to native code. Here are some timing results (Pentium III 500Mhz): * Scanning a 1Mb string containing only 'a's, except for the last character which is a 'b', searching for the pattern "aa?b" (repeated 100 times). - RE: 2.6s - PCRE: 68s * Regular expression example from http://www.bagley.org/~doug/shootout/ - RE: 0.43s - PCRE: 3.68s (The library is much slower when compiled to bytecode though, as it is entirely written in O'Caml. I plan to rewrite the critical sections of the code in C.) ====================================================================== 4) Graph libraries in O'Caml? ---------------------------------------------------------------------- Mattias Waldau was looking for an ocaml graph library. Several people have pointed to or proposed some libraries. Brian Rogoff: http://caml.inria.fr/archives/200109/msg00278.html Francois Pottier: http://caml.inria.fr/archives/200110/msg00004.html Chris Tilt: http://caml.inria.fr/archives/200109/msg00288.html ====================================================================== 5) No CWN next week ---------------------------------------------------------------------- I won't be able to read my email next week, so there won't be any caml weekly news. ====================================================================== -- David.Mentre@inria.fr Opinions expressed here are only mine.