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.0 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 concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 73BB1BC6B for ; Fri, 9 Mar 2007 14:55:00 +0100 (CET) Received: from pih-relay05.plus.net (pih-relay05.plus.net [212.159.14.132]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id l29Dsx0g008751 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO) for ; Fri, 9 Mar 2007 14:55:00 +0100 Received: from [80.229.56.224] (helo=beast.local) by pih-relay05.plus.net with esmtp (Exim) id 1HPfYg-00075G-Nw for caml-list@yquem.inria.fr; Fri, 09 Mar 2007 13:54:58 +0000 From: Jon Harrop Organization: Flying Frog Consultancy Ltd. To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] Interactive technical computing Date: Fri, 9 Mar 2007 13:49:09 +0000 User-Agent: KMail/1.9.5 References: <3D1E4D9CA9BCE04D8F2B55F203AE4CE30666AB82@selma.roomandboard.com> In-Reply-To: <3D1E4D9CA9BCE04D8F2B55F203AE4CE30666AB82@selma.roomandboard.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200703091349.09514.jon@ffconsultancy.com> X-Miltered: at concorde with ID 45F16733.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; bytecode:01 linkable:01 bytecode:01 ocaml:01 ocaml:01 run-time:01 gnuplot:01 frog:98 wrote:01 dynamically:01 dynamically:01 compile:01 caml-list:01 binary:01 bounds:02 On Friday 09 March 2007 13:33, Robert Fischer wrote: > > They don't make binary shared libraries > > because the architecture is a virtual machine driven by > > bytecode .. they DO make dynamically linkable bytecode > > libraries. > > As long as you play within the bounds of their VM. This is no different > than Ocaml. On the contrary, it is very different: Can you dynamically load code and get native performance? Not with OCaml. Can you compile to a cross-platform format and keep native performance? Not with OCaml. Can you write an interactive environment (top level) and keep native performance? Not with OCaml. Can you link to libraries (e.g. OpenGL) and be cross-platform? Not with OCaml (I think, because you need a custom run-time). I've got a killer high-performance 2D and 3D visualization library written in OCaml and I'd like to sell it, but I don't want to sell the source code because I value it too much. What can I do? Well, I can port it to F# and sell it there. In the mean time, OCaml users are stuck with GNUPlot. -- Dr Jon D Harrop, Flying Frog Consultancy Ltd. OCaml for Scientists http://www.ffconsultancy.com/products/ocaml_for_scientists