From mdowle at mdowle.plus.com  Thu Apr 23 01:36:48 2009
From: mdowle at mdowle.plus.com (Matthew Dowle)
Date: Thu, 23 Apr 2009 00:36:48 +0100
Subject: [Rd] Closed-source non-free ParallelR ?
References: <373DCC90906D430E952EF2C423B0D91B@ADAM>
	<ac81d400904220740i5a4adac4l41b1a170c6f27bd7@mail.gmail.com>
	<475a3c8f0904220836w43d07042m84f42edf6e05766c@mail.gmail.com>
Message-ID: <E1C5F6F55B4445AF902DF4B970BE1688@ADAM>

> how could it [MCE] swap a GPL license for the BSD?
Because the BSD is an open source license compatible with GPL.  See 
http://www.fsf.org/licensing/licenses/index_html#GPLCompatibleLicenses

> derivative work
Points taken. It may not be derivation in the sense of modification, more in 
the sense of using R as a library :
http://www.gnu.org/licenses/gpl-faq.html#GPLInProprietarySystem
http://www.gnu.org/licenses/gpl-faq.html#IfLibraryIsGPL
http://www.gnu.org/licenses/gpl-faq.html#LinkingWithGPL
http://www.gnu.org/licenses/gpl-faq.html#IfInterpreterIsGPL  (paragraphs 3 
and 4 in particular)

R, and base functions written in R, are GPL not LGPL.  In the context of the 
FAQ above, do your packages use base functions ?
http://www.gnu.org/philosophy/why-not-lgpl.html

The first R FAQ (1.1) states that R is released under GPL version 2 or any 
later version.
At the end of the GPL (both v2 and v3) it says "This General Public License 
does not permit incorporating your program into proprietary programs. If 
your program is a subroutine library, you may consider it more useful to 
permit linking proprietary applications with the library. If this is what 
you want to do, use the GNU Lesser General Public License instead of this 
License."

> there are certainly many existing R packages with non-free/non-open 
> licenses
They could be in breach too. The fact their licenses are like that does not 
in itself mean they are compliant with the GPL. R FAQ 2.11 defers to legal 
counsel - it mentions such licenses but it states no opinion about them as 
far as my reading goes. At least the source code of those packages is 
available for download. REvolution appear to be going one step further i.e. 
bundling R with their proprietary packages and selling the work as a whole.

Could someone from the R Foundation or the FSF step in and clarify the 
situation please ?   If in your opinion it is all fine what people are 
doing, why not release R under the LGPL for clarity ?

Regards, Matthew

----- Original Message ----- 
From: "David M Smith" <david at revolution-computing.com>
To: "Matthew Dowle" <mdowle at mdowle.plus.com>
Cc: "Patrick Shields" <pat at revolution-computing.com>; 
<r-devel at r-project.org>
Sent: Wednesday, April 22, 2009 4:36 PM
Subject: Re: [Rd] Closed-source non-free ParallelR ?


Patrick made all the points that I was going to make (thanks,
Patrick), but I wanted to reinforce one point that may be the source
of the confusion: ParallelR is not a modified version of R: ParallelR
is a suite of ordinary R packages that run on top of the R engine like
any other package. The R code and Python code in these packages were
written entirely by REvolution Computing staff (including Patrick),
and do not contain any code (derived or otherwise) from the R project.

In retrospect, the name ParallelR may be somewhat confusing in this sense...

# David Smith

On Wed, Apr 22, 2009 at 7:40 AM, Patrick Shields
<pat at revolution-computing.com> wrote:
> I'm Pat Shields, one of the software engineers working on ParallelR. I 
> just
> wanted to make two points: no R code or previously gpl'd code can be found
> in any of the non-gpl packages in ParallelR. I'm sure that the phrase
> "derived works" is a legally subtle one, but all these packages include 
> are
> R and occasionally python scripts (as well as the standard text
> documentation). If these are derived works, doesn't that mean that any R
> code is also, by extension, required to be GPL'd? If not, is it including
> these scripts in a package that forces the use of the GPL?
>
> Also, I'm confused about your dimissal of the MCE example. If that code 
> was
> a derivative work of R, how could it swap a GPL license for the BSD? I
> didn't think such a switch was possible. If it was, I'd imagine a lot more
> use of it, as a quick front project could make GPL software into BSD
> software after which all changes could go on behind closed doors.
>
> On Tue, Apr 21, 2009 at 7:38 PM, Matthew Dowle 
> <mdowle at mdowle.plus.com>wrote:
>
>> Dear R-devel,
>>
>> REvolution appear to be offering ParallelR only when bundled with their R
>> Enterprise edition. As such it appears to be non-free and closed source.
>> http://www.revolution-computing.com/products/parallel-r.php
>>
>> Since R is GPL and not LGPL, is this a breach of the GPL ?
>>
>> Below is the "GPL and ParallelR" thread from their R forum.
>>
>> mdowle > It appears that ParallelR (packages foreach and iterators) is
>> only available bundled with the Enterprise edition. Since R is GPL, and
>> ParallelR is derived from R, should ParallelR not also be GPL? Regards,
>> Matthew
>>
>> revolution > Hello Matthew, ParallelR consists of both proprietary and 
>> GPL
>> packages. The randomForest and snow libraries GPL licensed, whereas the
>> other libraries we include have a commercial license(including 'foreach' 
>> and
>> 'iterators'). Stephen Weller
>>
>> revolution > I wanted to expand on Stephen's reply. ParallelR is a suite 
>> of
>> R packages, and it is well established that packages can be under a
>> difference license than R itself (i.e. not the GPL). For example, package
>> MCE is licensed under BSD, RColorBrewer is licensed under Apache, most of
>> Bioconductor is under the Artistic license and some are under completely
>> unique licenses (e.g. mclust). REvolution Computing developed all of the
>> code in ParallelR (except for the bundled GPL packages Stephen mentions),
>> and we decided to release it under our own license in REvolution R
>> Enterprise.
>> That said, we do already release components of parallelR, such as the
>> underlying engine, Networkspaces (also written by REvolution Computing)
>> under an open source licence. Also, we are likely to release some other
>> components including foreach and iterators, to CRAN soon.
>> David Smith
>> Director of Community, REvolution Computing
>>
>> mdowle > The examples you give (MCE, RColorBrewer, Bioconductor) are all
>> available for free including the source code. Their licenses have been
>> approved by the FSF. Free software and open source are the terms of work
>> derived from GPL licensed software. REvolution's packages 'foreach' and
>> 'iterators' are neither free or open source. Can you provide a precedent
>> for proprietary closed-source packages for R ? Is your policy approved by
>> the FSF ?
>> I don't object to REvolution. I am a fan of you making money from 
>> training
>> courses, consultancy, support and binaries. These are all permitted by 
>> the
>> GPL. However the GPL does not allow you to distribute work derived from R
>> which is either closed source or non-free.
>> R is GPL, not LGPL.
>> The above is my personal understanding. I am now posting to r-devel to
>> check, feel free to join the public debate there.
>>
>> Regards, Matthew
>>
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
>
>
>
> --
> Pat Shields
> Software Engineer
> REvolution Computing
> One Century Tower | 265 Church Street, Suite 1006
> New Haven, CT 06510
> P: 203-777-7442 x250 | www.revolution-computing.com
>
> Check out our upcoming events schedule at
> www.revolution-computing.com/events
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>



-- 
David M Smith <david at revolution-computing.com>
Director of Community, REvolution Computing www.revolution-computing.com
Tel: +1 (206) 577-4778 x3203 (San Francisco, USA)

Check out our upcoming events schedule at 
www.revolution-computing.com/events



[Rd] Closed-source non-free ParallelR ?
Matthew Dowle