From: Alan Schmitt <alan.schmitt@inria.fr> To: lwn@lwn.net Subject: Attn: Development Editor, Latest Caml Weekly News Date: Tue, 1 Jan 2002 12:27:29 +0100 Hello, Here is the latest Caml Weekly News, weeks 19 december 2001 to 01 january 2002. Happy new year ! Summary: 1) Ensemble release 1.34 2) Cameleon 0.2 : first release 3) MacroHTML 4) Kernel in OCAML using native compil 5) OCaml on iPAQ 6) Segv while compiling ocaml-3.04 7) camomile pre-alpha release 8) OCaml IDE for Win32 9) Win32 API ====================================================================== 1) Ensemble release 1.34 ---------------------------------------------------------------------- Ohad Rodeh announced: Ensemble is a flexible message transport system written in Caml and developed by Cornell University, Hebrew University, and IBM research. Ensemble version 1.34 is ready. It includes the following improvements: 1. Added zero-copy to WIN32, and complete scatter-gather support. 2. Ported the native C-interface to WIN32. 3. Port to ocaml-3.04. Ensemble is a system that although written in ML, is faster than previous system written in C. To allow writing C applications, it is wrapped up inside an object-library that is linkable with any C application. Through management of IO vectors in C memory space, performance of C and ML applications is identical. The system is available from: www.cs.cornell.edu/Info/Projects/Ensemble. ====================================================================== 2) Cameleon 0.2 : first release ---------------------------------------------------------------------- Maxence Guesdon announced: Hi everybody, I'm pleased to announce the first release of Cameleon (0.2), an ide for OCaml, putting together all my previous tools : - OCamldoc to search and browse the documentation - OCamlCVS to manage files - Report to describe XML documents to be outputted by ocaml applications, - DBForge to easily access tables in databases, - Zoggy to build graphical interfaces. Besides, Cameleon can use Emacs or Efuns as text editor. Cameleon is available here : http://www.maxence-g.net/Tools/cameleon/cameleon.html Enjoy ! ====================================================================== 3) MacroHTML ---------------------------------------------------------------------- Brock announced: Howdy all, I've written a very simple macro pre-processor for html in ocaml which may be of interest to some here. The idea is to make the macros look and feel just like normal html. It also has a few other small random features along the same lines (includes, import of the result of a shell command, things like that). I intend to keep it very simplistic, though I always welcome ideas and suggestions. It may have some code that could be useful for other tasks as well, it does do a rough parse of the html breaking it into balanced tags for instance. The code is not production quality (in my opinion), and as always feel free to suggest better algorithms if you take a look at it. And the links are: http://deathonastick.org/projects/ocaml/archive/mhtml-2001.12.20.tar.gz http://deathonastick.org/projects/ocaml/mhtml/ ====================================================================== 4) Kernel in OCAML using native compiler ---------------------------------------------------------------------- Florian Hars answered: > Can anyone point me to any links concerning writing a > kernel in OCAML using the native compiler? The last time something like this was discussed, people recommended http://www.research.att.com/projects/cyclone instead. ====================================================================== 5) OCaml on iPAQ ---------------------------------------------------------------------- Friedman Roy asked: Hi, Has anyone tried running OCaml on an iPAQ, either with PocketPC or Linux? To some degree, I guess there should not be a problem, since the processor is a StrongARM, which is supported by OCaml, and 64MB should be enough. However, I'll be ahppy to hear if someone had experience with it. François Rouaix answered: I've thought about it, having had an iPaq since July last year... I spend a small amount of time loading the runtime source in the Embedded Visual C++ compiler, but was stopped rather fast by the lack of stdio/unix system call compatibility. I would like to have OCaml running under WinCE though... David Mentré also answered: When I was at INRIA earlier this year, I tried on a local iPAQ (with a cross-compiler ocaml[c|opt]) and on the skiffcluster iPAQs' cluster (by compiling ocaml natively). All those machines where under linux. Natively (i.e. on the skiffcluster), if you have a gcc, there is apparently no problem. I was able to compile and run my ocaml program (until a bug appeared :). Regarding cross-compilation, I failed to build an ocaml cross-compiler (Xavier is aware of it ;-). However, I don't know if the issue is in ocaml itself or more probably in a buggy cross-gcc I tried to produce. If you need more info on steps to generate a cross-ocaml, look at posts in this mailing list from Xavier (Leroy) and myself (I was david.mentre@inria.fr). ====================================================================== 6) Segv while compiling ocaml-3.04 ---------------------------------------------------------------------- Xavier Leroy explained: Update on the gcc 2.96 issue: A patch is now available, along with an updated source RPM and an updated RedHat 7.2 binary RPM, all at the usual place: http://caml.inria.fr/ocaml/distrib.html For those who are worried about it, the purity of the OCaml source code isn't affected: the patch simply selects gcc compilation options (-fomit-frame-pointer) that seem to work around the bug. As to which versions of gcc are affected: gcc 2.96 from RH 7.2 and Mandrake 8.1 are, I'm certain that 2.95.2 is not, and believe that 3.0 isn't either, but this has to be checked carefully. A bug report was filed with RedHat. (The bug was already in their database, but I added a report for good measure.) If someone knows how to file a bug report for Mandrake 8.1 (which seems to be affected as well), I can provide details. This is actually the second time that RedHat's modified gcc breaks OCaml. I won't engage in RedHat bashing here, since that's rather pointless. We'll probably deal with this issue like we did the first time: test the gcc version in configure and issue a strongly worded warning, telling the users to continue at their own risks. Just refusing to compile for gcc 2.96 would be excessive, since apparently not all versions of 2.96 have the bug... ====================================================================== 7) camomile pre-alpha release ---------------------------------------------------------------------- YAMAGATA yoriyuki announced: I am pleased to announce of a pre-alpha release of camomile, a collection of modules for multi-lingual text handling. Currently, it provides some data types for unicode, and facility of reading and writing several legacy encodings. Perhaps, unicode support is not very useful, since it lacks many facilities like normalization, collation, etc, but support for legacy encodings would be handy. It covers all major encodings for Chinese, Japanese, and Korean. (Besides UTFs and ISO-8859s) For further information and download, see Sourceforge project page. http://sourceforge.net/projects/camomile ====================================================================== 8) OCaml IDE for Win32 ---------------------------------------------------------------------- Warp asked: Hello I am starting now to think about building an IDE for OCaml under Win32. The Linux port will be done after. Goals are : - easy typing ( multiple-undo, syntax highlight, [auto indent], modes, search/replace tools, etc... ) - highly customizable ( custom keys and menus, configurations scripts written in ocaml ) - extensible ( modes in ocaml ) - written in ocaml ( with some C/C++ dll for Win32 User Interface - no GTK ) Targeted audience are windows developers. This is a round-table, i would like to collect as much ideas / opinions before starting the project. I have already seen EFuncs and Cameleon in the Hump, Efuncs is a little too much "emacs-like" and Cameleon seems to be far more than an editor. Does anyone have heard about other projects ? ====================================================================== 9) Win32 API ---------------------------------------------------------------------- Harry Chomsky announced: For several months I've been putting together an OCaml library providing direct access to the Win32 API. It's a huge project that I'm sure I will never totally finish... but I've got a good chunk of it done, and I've just posted it at the following URL: http://www.speakeasy.org/~hchomsky/code/ocaml-win32.zip It requires OCaml 3.04, because it uses the module include feature in combination with "external" declarations. If anybody has questions or comments about this code or would like to use it, please let me know. I'm planning to use it in the near future to build a tool for interactive OCaml programming, similar to an IDE in some ways. Last time I posted this, in May, I had some concerns about memory management. The discussion that followed convinced me that I was doing it wrong, and I fixed the problems according to my new understanding. I'm pretty sure I've gotten it right this time. ====================================================================== Alan Schmitt -- The hacker: someone who figured things out and made something cool happen.