From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=AWL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 5478ABBC4 for ; Sat, 21 Mar 2009 23:15:30 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AuUAAMIDxUnUnwckimdsb2JhbACCHpNPAQEBCgkMBw8GvVyDfgY X-IronPort-AV: E=Sophos;i="4.38,401,1233529200"; d="scan'208";a="24725273" Received: from relay.ptn-ipout02.plus.net ([212.159.7.36]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 21 Mar 2009 23:15:30 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AsgEAP8DxUnUnw4U/2dsb2JhbACCH9Fqg34G Received: from pih-relay08.plus.net ([212.159.14.20]) by relay.ptn-ipout02.plus.net with ESMTP; 21 Mar 2009 22:15:29 +0000 Received: from [87.115.86.1] (helo=leper.local) by pih-relay08.plus.net with esmtp (Exim) id 1Ll9TU-0005NW-SP for caml-list@yquem.inria.fr; Sat, 21 Mar 2009 22:15:29 +0000 From: Jon Harrop Organization: Flying Frog Consultancy Ltd. To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] Google summer of Code proposal Date: Sat, 21 Mar 2009 22:21:24 +0000 User-Agent: KMail/1.9.9 References: <200903211439.47107.cdome@bk.ru> <200903211338.32805.jon@ffconsultancy.com> <61A6655E-FD4E-45F8-AD7E-6050C2E0DDE5@gmail.com> In-Reply-To: <61A6655E-FD4E-45F8-AD7E-6050C2E0DDE5@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200903212221.24417.jon@ffconsultancy.com> X-Plusnet-Relay: 5a54ce5cf896a5d628795122ac485321 X-Spam: no; 0.00; run-time:01 compiler:01 lacks:01 compilation:01 ocaml:01 ocaml:01 bindings:01 runtime:01 compilation:01 mls:01 2009:98 frog:98 wrote:01 wrote:01 compile:01 On Saturday 21 March 2009 20:43:01 Joel Reymont wrote: > On Mar 21, 2009, at 1:38 PM, Jon Harrop wrote: > > . You will succumb to ocamlopt's current run-time representation > > which is > > objectively inefficient (e.g. boxing floats, tuples, records) and > > was only > > chosen because the compiler lacks capabilities that LLVM already > > provides for > > you (primarily JIT compilation). > > This is probably a stupid suggestion but why not have OCaml directly > generate machine code, without the use of assembler and linker? > > Wouldn't this be easier than trying to couple OCaml with LLVM? Had OCaml not already been coupled with LLVM, yes. However, there are quite decent OCaml bindings to LLVM already available (in the LLVM tree). > Separately, it's sort of funny that LLVM and its users are going > through all the trouble now, when Lisp and Forth have had runtime > compilation for years and years. Yes and no. LLVM supports many features that Lisp does not (e.g. type checking at compile time, tail calls) and its implementation and the resulting performance are far better than any of the open source Lisp implementations. Lisp was one of the foundations I ruled out for implementing new MLs for these reasons. -- Dr Jon Harrop, Flying Frog Consultancy Ltd. http://www.ffconsultancy.com/?e