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.7 required=5.0 tests=AWL,SPF_SOFTFAIL 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 BDA58BC69 for ; Wed, 26 Sep 2007 08:43:44 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAAAJuc+UbAXQInemdsb2JhbACOLQEBCQo X-IronPort-AV: E=Sophos;i="4.20,299,1186351200"; d="scan'208";a="3262527" Received: from concorde.inria.fr ([192.93.2.39]) by mail3-smtp-sop.national.inria.fr with ESMTP; 26 Sep 2007 08:43:44 +0200 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id l8Q6hiVh006825 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Wed, 26 Sep 2007 08:43:44 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAAANqb+UbLENaMnmdsb2JhbACOLAEBAQEHBAYn X-IronPort-AV: E=Sophos;i="4.20,299,1186351200"; d="scan'208";a="1794974" Received: from ipmail01.adl2.internode.on.net ([203.16.214.140]) by mail2-smtp-roc.national.inria.fr with ESMTP; 26 Sep 2007 08:43:42 +0200 X-IronPort-AV: E=Sophos;i="4.20,299,1186324200"; d="scan'208";a="197841389" Received: from ppp121-44-123-220.lns10.syd6.internode.on.net (HELO [192.168.1.201]) ([121.44.123.220]) by ipmail01.adl2.internode.on.net with ESMTP; 26 Sep 2007 16:11:30 +0930 Subject: Re: [Caml-list] Re: Cherry-picking modules (was Re: [ANN] OCaml Reins 0.1 - Persistent Data Structure Library) From: skaller To: Sylvain Le Gall Cc: caml-list@inria.fr In-Reply-To: References: <46F95938.7030107@cs.umd.edu> <17487E59-04F2-4509-87B5-24377B051E9E@epfl.ch> <46F961E5.5060302@cs.umd.edu> <55A4E82E-3D05-4F79-A8A6-A87905EB4FC8@epfl.ch> Content-Type: text/plain; charset=utf-8 Date: Wed, 26 Sep 2007 16:41:29 +1000 Message-Id: <1190788889.6800.35.camel@rosella.wigram> Mime-Version: 1.0 X-Mailer: Evolution 2.10.1 Content-Transfer-Encoding: 8bit X-Miltered: at concorde with ID 46F9FFA0.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; ocaml:01 buenzli:01 dependencies:01 ocaml:01 compiler:01 dependencies:01 distro:01 2007,:98 sourceforge:01 wrote:01 wrote:01 caml-list:01 data:02 modules:02 epfl:02 On Tue, 2007-09-25 at 23:33 +0000, Sylvain Le Gall wrote: > On 25-09-2007, Daniel Bünzli wrote: > Anyway, embeding any external code into your project is a nightmare for > security/maintenance in the long term... I would avoid this solution if > i want things that doesn't have problem. Embedding source is generally better, unfortunately, if you're distributing a product for other people to use. This is because 1. people use crappy build systems 2. have unnecessary dependencies 3. don't maintain their code 'reliably' and/or don't provide repository (write) access Apart from Python and Ocaml itself (and an unfortunate need for a C++ compiler) my product has no external dependencies, and it builds on all platforms I know about *as shipped*. My rule for Ocaml code is simple: either it is shipped in the standard distro or it is shipped in mine. People have enough problems getting Ocaml and C++ to work without adding second order dependencies. Hopefully (1) will eventually be solved by ocamlbuild, however it still isn't really reliable/do the right thing, and doesn't work on Windows. We provide it as an option: if ocamlbuild is found it is used -- I have to keep turning it off though, because it isn't compatible with our other build scripts (fails sanitise checks, probably our _tags etc aren't right yet). -- John Skaller Felix, successor to C++: http://felix.sf.net