Previous week   Up   Next week
Hello,

Here is the latest Caml Weekly News, week 09 to 15 january, 2002. 

Summary:
1) English translation of Développement d'applications avec Objective
   Caml ?
2) Packaging tool
3) mlgmp, bugfix release
4) pa_ocaml
5) Win32 API
6) More OCaml+windowing system questions
7) Mp3tag : edit mp3 tags from OCaml programs
8) Compiling lablttk and lablgtk on windows

======================================================================
1) English translation of Développement d'applications avec Objective
   Caml ?
----------------------------------------------------------------------
Walter B. Rader asked and Ruchira Datta answered:

> Several months ago I wrote to O'Reilly books and asked about a rumour
> that they were making an English translation of the aforementioned
> book.  They responded that yes, a group of volunteers was working on
> the project, and as progress was made, it would be posted to the
> book's website:
> 
> http://www.pps.jussieu.fr/Livres/ora/DA-OCAML/index.html
> 
> Does anyone know if the translation is indeed being performed?  I
> don't find any information at the above website...

Yes, it is.  Most of the book has been translated and is in the process
of being proofread.  As soon as an initial segment of the book has been
proofread the translation project will release it to the website.  (At
least, that's my understanding with O'Reilly so far.)

> Walter Rader
> 
> 
> P.S. I've spent hours making a Babelfish (babelfish.altavista.com)
> translation of the book.  Babelfish only translates web pages up to a
> specific length, and then stops, so I had to split many of the book's
> pages into multiple HTML files, translate each of them, and then
> recombine them.  Babelfish also messes up the appearance of the code
> samples.  I have corrected all of these problems, as well as fixed
> many of the imprecise translations.  If anyone wants some
> "suggestions" about how they can do this process "themselves," feel
> free to e-mail me directly at wrader@ocf.berkeley.edu.

Egad!  Well, we had been aiming for web release in February and it still
seems that is doable.  Sorry you had to go through all this work,
hopefully it will be useful in other projects.

======================================================================
2) Packaging tool
----------------------------------------------------------------------
Ohad Rodeh announced:

Following the short discussion on packing, I've found the time to hack on
it a little bit, the results can be found at:
      http://www.cs.cornell.edu/Info/Projects/Ensemble/mrg/doc.html

In brief, this a Caml packaging tool that works!

Comments are welcome,
     Ohad.           

======================================================================
3) mlgmp, bugfix release
----------------------------------------------------------------------
David Monniaux announced:

mlgmp is an interface between GNU MP (multiprecision computations on
integers, rationals and floating-point numbers) and O'Caml.

http://www.di.ens.fr/~monniaux/download/mlgmp-20020110.tar.gz

- lots of bugfixes
- support for MPFR 2001-10-26 (not the new functions)
- hash function on Z and Q

======================================================================
4) pa_ocaml
----------------------------------------------------------------------
Alain Frisch announced:

Hello,

I'd like to announce the release of pa_ocaml, a modified version of the
ocamllex lexer generator. Its implements a Camlp4-syntax extension, and
makes it possible to define lexers inside Caml programs.

* Simplifies Makefile and dependencies generation with ocamldep (no
  intermediate file).

* Lexers may have extra arguments.

* Works even with Revised Syntax.


pa_ocamllex is in the OCaml CVS; it can be downloaded as a standalone
package there:

http://www.eleves.ens.fr:8080/home/frisch/soft#pa_ocamllex

(works with OCaml 3.04)

======================================================================
5) Win32 API
----------------------------------------------------------------------
Harry Chomsky announced:

I've now put together a more proper release of this library, including an
LGPL license.  The new URL is:

http://www.speakeasy.org/~hchomsky/ocaml-win32.html

======================================================================
6) More OCaml+windowing system questions
----------------------------------------------------------------------
Walter B. Rader asked and Xavier Leroy answered:

> I am using OCaml and SDL (Software DirectMedia Layer, a
> cross-platform graphics library) to create a windowing
> system that runs on top of the user's existing OS+GUI (e.g.
> Windows, MacOS, etc.) and provides similar services.  I
> figure that writing it this way allows me to take advantage
> of the services that the GUI and OS already offer, while at
> the same time extending its capabilities.
> 
> The windowing system's capabilities (will) include
> portability (offered to some degree by OCaml and to a larger
> degree by SDL,) execution of byte-code compiled applications
> that use the windowing system, network transparency, the
> option to reconfigure at run-time UI behavior (e.g. for
> "skins," users with assistive hardware such as screen-
> readers, etc.) and so forth.
> 
> The project is still in its early stages and as such I don't
> have a lot of technical details to add before launching into
> my questions.  =)
> 
> I apologize if these are RT*M type questions - I am a bit
> overwhelmed trying to learn OCaml and choosing THIS as my
> first project =).  Feel free just to give me pointers to
> information elsewhere on the web.
> 
> 
> Question #1: Is OCaml a suitable language for this project?
> Based on what others have done, it seems that I "should"
> use a language like C or C++.  When enumerating the
> advantages OCaml offers, I came up with the following:
> 
> o first-class functions (very handy)
> o type safety
> o automatic garbage collection
> o terse source code
> o programs that use the windowing system can be distributed
>   in byte-code for enhanced portability
> 
> However, C and C++ are extremely portable, which is very
> appealing to me.  Why would OCaml be more suited for this
> project?
> 
> 
> Question #2: How portable *is* OCaml?  I see that binaries
> are available for Linux, MS Windows, and Macintosh.  Has
> there been success in porting OCaml to other platforms?  If
> not the native-code compiler, at least the byte-code compiler
> and interpreter?
> 

The byte-code system works on essentially every Unix variant out there,
and the native-code compiler is supported for a dozen processor / Unix
variant combinations.  For a detailed list, see
        http://caml.inria.fr/ocaml/portability.html

So, OCaml is supported under Unix (including but not limited to
Linux), Windows, MacOS, and BeOS to some extent.  Other operating
systems (VMS, IBM's mainframe OSes, etc) haven't been tried, but they
are getting extinct :-)

> 
> Question #3: As mentioned previously, I will support running
> byte-code applications that use the windowing system.  I
> would like to be able to load each in its own process space,
> so that the OS scheduler can handle scheduling.
> 
> (The benefit being that I don't have to employ some kind of
> cooperative multi-tasking system, which I would have to do
> if the windowing system and all applications executed in it
> ran in the same process.)
> 
> Is there a "good" (efficient, elegant, etc.) portable way to
> handle communication between the windowing system process and
> the application process(es)?
 
There's a built-in marshaler that lets you exchange complex data
structures over pipes or sockets.  There is no standard remote
function call infrastructure yet, but it's not hard to build one on
top of the marshaler; see for instance what the Unison team did.

======================================================================
7) Mp3tag : edit mp3 tags from OCaml programs
----------------------------------------------------------------------
Maxence Guesdon announced:

Hi,

I'm pleased to announce mp3tag, a (very small) library to edit mp3tags
in mp3 files.  Find it at
http://www.maxence-g.net/Tools/mp3tag/mp3tag.html   

======================================================================
8) Compiling lablttk and lablgtk on windows
----------------------------------------------------------------------
Andrew Lawson asked and Alan Schmitt answered:

> Hello
...
>     Secondly, I want to start using lablgtk on windows
> with the cygwin ocaml distribution. Can anyone give me
> a step by step guide to getting, installing and
> compiling lablgtk on this platform.
> 

1) compile and install ocaml-3.04
2) fetch this tarball:
http://www.cis.upenn.edu/~bcpierce/unison/download/resources/lablgtk-1.2.3-cygwin.tar.gz
   (This include gtk for cygwin and lablgtk for cygwin, kudos to he
   Yang for this port)
3) untar, and follow the readme instructions. It worked like a charm for
   me.

======================================================================

Alan Schmitt