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 VAA07443; Wed, 23 Jul 2003 21:05:47 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id VAA10329 for ; Wed, 23 Jul 2003 21:05:46 +0200 (MET DST) Received: from relay.hoga.pl (res-61.hoga.pl [193.178.241.61] (may be forged)) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id h6NJ5jT13454 for ; Wed, 23 Jul 2003 21:05:45 +0200 (MET DST) Received: from mail pickup service by relay.hoga.pl with Microsoft SMTPSVC; Wed, 23 Jul 2003 21:01:22 +0200 thread-index: AcNRTcEP+zlwRHBqRg2TW3242HV+eQ== Received: from ppp ([213.77.239.146]) by smtp.hoga.pl with InfocitySMTPReceiver (16.04.2002); Wed, 23 Jul 2003 21:08:07 +0200 Importance: normal Message-ID: <008201c3514d$b88d3760$50ef4dd5@ppp> From: "Lukasz Stafiniak" To: Subject: [Caml-list] Caml Machine and GP Date: Wed, 23 Jul 2003 20:53:11 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300 X-OriginalArrivalTime: 23 Jul 2003 19:01:22.0531 (UTC) FILETIME=[CECB7330:01C3514C] X-Loop: caml-list@inria.fr X-Spam: no; 0.00; lukasz:01 recurrence:01 speedup:01 overheads:01 kicks:01 translcore:01 transl:01 bytegen:01 emitcode:01 type-based:01 yli:99 dok:99 mks:99 ocaml:01 caml:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Hi precious List! I work on genetic programming with typed terms. I would like to use OCaml bytecode-system to run my programs. Evaluation scheme I've used so far: variables by de Brujin indices, beta-reduction by substitution, recurrence by rational trees (with mutable reference cells filled when first encountered in evaluation). I wonder how much of a speedup could I get? -- I guess MUCH. How big are the overheads? I guess for not computationally involved tasks evaluation would be still better, due to the overheads (but these dont give the kicks). How should I do this? Look around in Toplevel, use the path: Translcore.transl_exp --> Bytegen.compile_phrase --> Emitcode.to_memory --> Meta.reify_bytecode? Say, I put a function in Typedtree.expression at one side, and get the result at the other side? How about treatment of types -- do I need to supply them? My terms are typed, but this would involve translating types as well, unnecessarily. More -- how to call functions from outside (perhaps use the environment argument -- what to put there)... Best way to learn these things is reading the source, I guess? Can I catch exceptions from code run this way -- I guess I can, Toplevel does it probably. I also welcome Hi! responses from people interested in genetic programming. I plan to feature (type-based or some other) termination of my programs, and I've developed some generalization algorithms to use in "intelligent" recombination. Best wishes, Lukasz Uwaga! Do ko=F1ca sierpnia przed=B3u=BFyli=B6my promocje, do pakiet=F3w wielostanowiskowych dok=B3adamy PenDrive Sprawd=BC: http://www.mks.com.pl/promocja-mobile.html ------------------- 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