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 QAA24743 for caml-redistribution; Tue, 3 Nov 1998 16:56:41 +0100 (MET) 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 PAA12188 for ; Mon, 2 Nov 1998 15:42:11 +0100 (MET) Received: from tif.inria.fr (tif.inria.fr [128.93.11.73]) by concorde.inria.fr (8.8.7/8.8.7) with ESMTP id PAA17399 for ; Mon, 2 Nov 1998 15:42:08 +0100 (MET) Received: (from lefessan@localhost) by tif.inria.fr (8.8.8/8.8.8) id PAA12091; Mon, 2 Nov 1998 15:42:09 +0100 (MET) From: Fabrice Le Fessant Message-ID: <13885.50369.213776.819381@tif.inria.fr> Date: Mon, 2 Nov 1998 15:42:09 +0100 (MET) To: caml-list@inria.fr Subject: Contrib: dynlink for native code executables to load .cmo files X-Mailer: VM 6.62 under Emacs 19.34.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=iso-8859-1 Sender: weis I have written a small interpretor of Ocaml-2.00 bytecode in Ocaml. The main interest of this program is that it allows native code programs to load and execute .cmo files. This library uses the same interface as the Dynlink library of the Ocaml distribution. Dynamically linked modules are able to use the functions defined both in native code modules and previously linked bytecode modules, and even C primitives if they have been correctly declared to the dynamic linker. If bytecode functions are stored in some native code data structures, the native code can then also use them as if they were native code functions. This is still a Beta version (some bytecodes have not been implemented (GETMETHOD, and float arrays)). Pure bytecode computations are about ten times slower than when they are executed by ocamlrun. http://pauillac.inria.fr/src Comments and bugs: ================= Fabrice Le Fessant (Email : Fabrice.Le_fessant@inria.fr ) PARA project INRIA Rocquencourt FRANCE