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=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from discorde.inria.fr (discorde.inria.fr [192.93.2.38]) by yquem.inria.fr (Postfix) with ESMTP id DE14ABC69 for ; Sat, 10 Mar 2007 23:08:13 +0100 (CET) Received: from outgoing-mail.its.caltech.edu (outgoing-mail.its.caltech.edu [131.215.239.19]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id l2AM8CsD010730 for ; Sat, 10 Mar 2007 23:08:13 +0100 Received: from water-dog.caltech.edu (water-dog [192.168.1.26]) by fire-ox-postvirus (Postfix) with ESMTP id 33C15352DF; Sat, 10 Mar 2007 14:08:12 -0800 (PST) Received: from [192.168.1.100] (adsl-66-218-63-93.dslextreme.com [66.218.63.93]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by fire-ox.its.caltech.edu (Postfix) with ESMTP id 3E03F35298; Sat, 10 Mar 2007 14:08:01 -0800 (PST) Message-ID: <45F32C3F.9000501@cs.caltech.edu> Date: Sat, 10 Mar 2007 14:07:59 -0800 From: Michael Vanier User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a1) Gecko/20061112 SeaMonkey/1.5a MIME-Version: 1.0 To: Richard Jones Cc: caml-list@inria.fr Subject: Re: [Caml-list] Interactive technical computing References: <3D1E4D9CA9BCE04D8F2B55F203AE4CE30666AB7C@selma.roomandboard.com> <20070310145546.GA9357@furbychan.cocan.org> In-Reply-To: <20070310145546.GA9357@furbychan.cocan.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at discorde with ID 45F32C4C.001 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; vanier:01 mvanier:01 ocaml:01 ocaml:01 model:01 ocamlopt:01 malloc:01 bindings:01 wrote:01 wrote:01 compile:01 compile:01 caml-list:01 functions:01 api:01 I agree 100%. This is the biggest limitation to using ocaml for large projects. If it were fixed, ocaml would become an unstoppable juggernaut ;-) Here's a paper describing an approach to this problem for an extended version of Standard ML: http://www.ps.uni-sb.de/Papers/abstracts/missing-link.html This actually goes further than dynamic linking to provide a full component model. What I wouldn't give to see this in ocaml. Mike Richard Jones wrote: > On Thu, Mar 08, 2007 at 03:26:03PM -0600, Robert Fischer wrote: >>> Putting aside the obvious cultural resistance to using a sensible >>> language for this project, there is one technical hurdle: It needs to >>> compile into a DLL which can be linked to other programs (in C and >>> other languages). I can't generate such code using ocamlopt, at least >>> not without using unsupported out-of-tree extensions. >>> >> I don't think this is a real hurdle to general adoption of a language. >> After all, Java and C# aren't intended to be used like that, yet they >> certainly have wide-spread adoption. > > It is a hurdle because not all programming is writing end-user > application code. > > In fact what is somewhat sad is that OCaml (unlike Java and C#) can > compile to native code which really has very minimal "environmental > needs" - just a smallish library of functions and a GC which is > written on top of C's malloc. So really it could be an ideal > replacement for libraries written in C, where the heavy lifting is > done in OCaml and there are some thin bindings to provide a C API. > > Rich. >