From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by yquem.inria.fr (Postfix) with ESMTP id DFC54BBAF for ; Mon, 6 Dec 2010 21:18:34 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AoMAAIvT/ExKfVIqkGdsb2JhbACWSYxrCBUBAQEBCQkMBxEEHqRTjAIBBY4RAQSCFIM1 X-IronPort-AV: E=Sophos;i="4.59,306,1288566000"; d="scan'208";a="91645947" Received: from mail-ww0-f42.google.com ([74.125.82.42]) by mail1-smtp-roc.national.inria.fr with ESMTP; 06 Dec 2010 21:18:34 +0100 Received: by wwi17 with SMTP id 17so5627wwi.3 for ; Mon, 06 Dec 2010 12:18:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:from:to:cc:references :in-reply-to:subject:date:organization:message-id:mime-version :content-type:content-transfer-encoding:x-mailer:thread-index :content-language; bh=p4GXy/mjFg8Q4FdXwqzH9sYJJC4vnyns/98+n2nOVMo=; b=pPJc6/pbHqGMJLpana2xVSEueYsVuGnCVxyMKA6xUO5h7Nx2YmLVg/IhUI6JBdeVct C50RXM6Zv6RmtX0bJ/dubxQs/vLv2tN3TPPjgTgHMg6YVW766tHFzbqPPGLVpnqpkg3Z jxi+X7okeZpV7YrdooDsp47uo3Gqw0e1cUY8Y= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=from:to:cc:references:in-reply-to:subject:date:organization :message-id:mime-version:content-type:content-transfer-encoding :x-mailer:thread-index:content-language; b=O0Y/W0Xkaof+DPPliTGpilKBKcGgpWa3x+TqxdlbgGn+iGNpwwIkCvGI1oweGXmwjd NbtVIR8sDtruP54Fef+9oCGFKn0IlqISX+e68mVdj1+EDkIWxVCtopjnXJBGONZLjEpY 2+TjJ2+WjpejkfpWRKabW6DHhTOC9h64pwOuY= Received: by 10.227.155.145 with SMTP id s17mr6239684wbw.64.1291666714210; Mon, 06 Dec 2010 12:18:34 -0800 (PST) Received: from WinEight ([87.113.160.118]) by mx.google.com with ESMTPS id x59sm2557767weq.14.2010.12.06.12.18.31 (version=SSLv3 cipher=RC4-MD5); Mon, 06 Dec 2010 12:18:32 -0800 (PST) From: Jon Harrop To: "'Richard Jones'" , "'Benedikt Meurer'" Cc: References: <0a8b01cb90da$da5e6240$8f1b26c0$@com> <5E2DA3F1-7998-4F62-B617-7B6451D1001D@googlemail.com> <0b3b01cb9161$a81c8e10$f855aa30$@com> <0b9301cb91a3$8f42fd60$adc8f820$@com> <0cae01cb9325$a8ddc3d0$fa994b70$@com> <20101206110826.GA10407@annexia.org> In-Reply-To: <20101206110826.GA10407@annexia.org> Subject: RE: ocamlopt LLVM support (Was: [Caml-list] OCamlJIT2 vs. OCamlJIT) Date: Mon, 6 Dec 2010 20:18:16 -0000 Organization: Flying Frog Consultancy Message-ID: <00f301cb9582$b839bd70$28ad3850$@com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 12.0 Thread-Index: AcuVNfZnlWmigRs7Rq6VPY9fJMLv3gATFRdw Content-Language: en-gb X-Spam: no; 0.00; ocamlopt:01 bindings:01 camlidl:01 pointers:01 ocaml:01 interop:01 stubs:01 ocaml:01 bigarray:01 cheers:01 stone:98 wrote:01 compile:01 caml-list:01 numerical:03 Richard Jones wrote: > It might kick-start efforts to automatically generate bindings, at > least to C code, which wouldn't be a bad thing. camlidl is clumsy and > doesn't handle a very important case (pointers to handles) so it's not > really useful for this. Yes, LLVM is ideal for this. Using LLVM to JIT compile OCaml<->C interop stubs should be quite easy. I did a bit of this in some of the OCaml Journal article that were on LLVM. You could also kill two birds with one stone by creating an OCaml<->HLVM bridge with it. That would make it easier to create a bigarray from OCaml and call into high-performance parallel numerical code to chomp on it. Cheers, Jon.