From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id OAA29316 for caml-redistribution; Wed, 25 Jun 1997 14:50:48 +0200 (MET DST) Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id OAA28593 for ; Wed, 25 Jun 1997 14:08:42 +0200 (MET DST) Received: from prof.inria.fr (prof.inria.fr [128.93.11.47]) by concorde.inria.fr (8.8.5/8.7.3) with ESMTP id OAA25118 for ; Wed, 25 Jun 1997 14:08:41 +0200 (MET DST) Received: from hobbes.inria.fr (hobbes.inria.fr [128.93.11.72]) by prof.inria.fr (8.6.10/8.6.6) with ESMTP id OAA04247 for ; Wed, 25 Jun 1997 14:08:40 +0200 Received: (lefessan@localhost) by hobbes.inria.fr (8.6.10/8.6.6) id OAA23076; Wed, 25 Jun 1997 14:08:34 +0200 Date: Wed, 25 Jun 1997 14:08:34 +0200 Message-Id: <199706251208.OAA23076@hobbes.inria.fr> From: Fabrice Le Fessant To: caml-list@inria.fr Subject: Contrib MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=iso-8859-1 Sender: weis Bonjour, Utilisant fréquemment les libairies Unix et Thread, tous mes programmes sont linkés en mode -custom. De fait, les exécutables sont très gros (ils contiennent la machine virtuelle modifiée et le bytecode) et leur compilation est longue (la machine virtuelle est recréée à chaque fois, l'écriture sur NFS est longue). Pour ces raisons, j'ai fait un petit patch au compilateur, qui permet de créer des machines virtuelles autres que ocamlrun. Une fois la machine virtuelle créée, les exécutables sont petits et leur compilation rapide. De plus, comme ils ne contiennent que du bytecode, ils sont indépendants des machines. Ce patch est disponible à cette URL: http://www-sor.inria.fr/~lefessan/src/shared-vm.tar.gz J'ai aussi un peu améliorer ma librairie X11 en Ocaml. Elle est maintenant compilable aussi bien en bytecode (avec threads) qu'en code natif (sans threads). Les requêtes peuvent être synchrones (avec attente de la réponse) ou asynchrones (retournent un événement sur lequel on peut se synchroniser plus tard pour récupérer la réponse). Encore peu documentée, mais accompagnée de petits programmes exemples. Les noms correspondent à peu près à ceux de la libX11 (XGetWindowAttributes devient X.getWindowAttributes en synchrone et XASYNC.getWindowAttributes en asynchrone, dans le module Xlib). Ces programmes sont disponibles à: http://www-sor.inria.fr/~lefessan/src/index.html (ainsi qu'un patch pour générer des fichiers HTML avec liens hypertextes) __________________________________________________________________________ Hello, I frequently use Unix and Thread libraries, so, my programs are always linked in -custom mode. As a consequence, they are often really big (they contain a modified virtual machine and some bytecode) and their compilation is long (the virtual machine is compiled each time, and 600ko files write is long on NFS). For this reasons, I have done a little patch to ocamlc, to create new virtual machines other than ocamlrun. Once you have created your modified virtual machine, program executables are small and compilation is really faster. Moreover, as they only contain bytecode, they are machine-independant. this patch is available at: http://www-sor.inria.fr/~lefessan/src/shared-vm.tar.gz I have also improved my X11 library in Ocaml. Now, you can compile it either in bytecode (with threads) or in native code (without threads). Requests can be synchron (wait for reply) or asynchron (you get an event on which you will synchronize latter to get the reply). Bad documented, but comes with some small program examples. Request names are close to libX11 ones (XGetWindowAttributes become X.getWindowAttributes in synchron mode and XASYNC.getWindowAttributes in asynchron mode, in Xlib module). These programs are available at: http://www-sor.inria.fr/~lefessan/src/index.html (and also a patch to generate HTML files with hypertext links). -- Fabrice LE FESSANT Fabrice.Le_Fessant@inria.fr