From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id RAA01830; Thu, 17 Oct 2002 17:06:04 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f 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 RAA01774 for ; Thu, 17 Oct 2002 17:06:03 +0200 (MET DST) Received: from holmes.infopro.spb.su (holmes.infopro.spb.su [195.242.2.2]) by concorde.inria.fr (8.11.1/8.11.1) with ESMTP id g9HF5t504397 for ; Thu, 17 Oct 2002 17:06:02 +0200 (MET DST) Received: from stapleton.peterlink.ru (stapleton.peterlink.ru [195.242.2.5]) by holmes.infopro.spb.su (8.9.1/8.9.1) with ESMTP id TAA13636; Thu, 17 Oct 2002 19:05:53 +0400 (MSD) Received: from spb-1-135.dialup.peterlink.ru (IDENT:mitya@spb-1-135.dialup.peterlink.ru [195.242.16.135]) by stapleton.peterlink.ru (8.12.3/8.12.3) with ESMTP id g9HF4jQT072525; Thu, 17 Oct 2002 19:04:46 +0400 (MSD) Subject: Re: [Caml-list] Runtime (native) compilation From: Dmitry Lomov To: Walid Taha Cc: caml-list@inria.fr In-Reply-To: References: Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Mailer: Ximian Evolution 1.0.3 Date: 17 Oct 2002 19:07:48 +0400 Message-Id: <1034867271.3655.7.camel@eddie> Mime-Version: 1.0 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Walid, although Dynamic Caml does not (yet) work on native code, we have implemented (a while ago actually) a very preliminary prototype implementation of it for i386. We do not use ocamlopt for code generation however - we implemented a custom code generator. Do you think it is difficult to make ocamlopt generate machine code instead of assembler, and why do you think one needs linking at all? (Probably it all different in MetaOCaml - I have not studied the internals) As to dealing with runtime, I do not see much differences between bytecode and native code case - at least in Dynamic Caml. What problems do you perceive? Friendly, Dmitry > > Hello, > > We've been working on a while on building MetaOCaml, which provides three > basic constructs for contructing programs at runtime and compiling them. > This seems to be working well in the context of the bytecode compiler. > For the native code compiler, though, things seems to be more tricky. In > particular, the native code compiler produces assembly code. This has to > be assembled, linked, and loaded to memory. Does any one know of a fast > way to do the last three steps (other than calling the assembler, linker, > and loader). Also, has anyone dealt with the issue of coordinating the > runtime for the original running image and the newly produced runnable > image (in particular, has anyone dealt with the garbage collection > issues?) > > Walid. > -- Dmitry Lomov IntelliJ Labs / JetBrains Inc. http://www.intellij.com "Develop with pleasure!" ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners