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 mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id 5E59ABC6B for ; Thu, 20 Sep 2007 17:45:29 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAAALAy8kbLENaMnmdsb2JhbACOFQEBAQEHBAYPGA X-IronPort-AV: E=Sophos;i="4.20,279,1186351200"; d="scan'208";a="1472907" Received: from discorde.inria.fr ([192.93.2.38]) by mail2-smtp-roc.national.inria.fr with ESMTP; 20 Sep 2007 17:46:53 +0200 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id l8KFk5VX024339 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Thu, 20 Sep 2007 17:46:06 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAAALAy8kbLENaMnmdsb2JhbACOFQEBAQEHBAYPGA X-IronPort-AV: E=Sophos;i="4.20,279,1186351200"; d="scan'208";a="1472905" Received: from ipmail01.adl2.internode.on.net ([203.16.214.140]) by mail2-smtp-roc.national.inria.fr with ESMTP; 20 Sep 2007 17:46:51 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAAAHow8kZ5LHvc/2dsb2JhbAAM X-IronPort-AV: E=Sophos;i="4.20,279,1186324200"; d="scan'208";a="194747098" 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; 21 Sep 2007 01:16:44 +0930 Subject: Re: [Caml-list] Re: [ANN] coThreads 0.10 From: skaller To: Florian Weimer Cc: Zheng Li , caml-list@inria.fr In-Reply-To: <87abrhwopc.fsf@mid.deneb.enyo.de> References: <87lkb5fe3f.fsf@pps.jussieu.fr> <87sl5d8cgd.fsf@pps.jussieu.fr> <46F174D9.5060900@ujf-grenoble.fr> <877imm2z7h.fsf@pps.jussieu.fr> <1190249430.6642.1.camel@rosella.wigram> <20070920142938.d48552f2.mle+ocaml@mega-nerd.com> <1190272316.23116.34.camel@rosella.wigram> <20070920175233.a510630b.mle+ocaml@mega-nerd.com> <87abrhka16.fsf@pps.jussieu.fr> <1190284989.6770.28.camel@rosella.wigram> <87abrhwopc.fsf@mid.deneb.enyo.de> Content-Type: text/plain Date: Fri, 21 Sep 2007 01:46:48 +1000 Message-Id: <1190303208.6036.33.camel@rosella.wigram> Mime-Version: 1.0 X-Mailer: Evolution 2.10.1 Content-Transfer-Encoding: 7bit X-Miltered: at discorde with ID 46F295BD.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; 0200,:01 lgpl:01 ocaml's:01 0.10:98 producers:98 ffau:98 sourceforge:01 wrote:01 exception:01 caml-list:01 executables:01 rarely:02 linking:02 florian:03 static:03 On Thu, 2007-09-20 at 13:39 +0200, Florian Weimer wrote: > (Plain LGPL doesn't > > have a static linking exception as Ocaml's libraries do). > > It does, and it's quite straightforward to fulfill. A derivative work has conditions imposed on it which are contrary to normal (closed source/proprietary) commercial practice. As I read the licence, the provider must make it possible for the user to link an alternate or modified library. Static linked executables provided by commercial vendors very rarely provide any way to do that. Whether or not the conditions are straightforward to fulfil depends on the producers goals. If you were making an embedded application it would almost certainly not be, and it would be a legal impediment. Do you know any vendors of console games, for example, that tell you how to modify a part of the game? The software build processes used are almost certainly trade secrets. Even in my own FFAU product, whilst the whole of the sources is available for inspection and modification, I certainly don't document all of it -- if you want to modify a library you'll have to go read all the source and find out yourself. It isn't clear that satisfies the "make it possible for the client to replace the library" requirement. -- John Skaller Felix, successor to C++: http://felix.sf.net