Tom,

FWIW, since you appear to be representing World Programming in your queries (at 
least that is my inference given your e-mail domain), it would be prudent to 
get formal legal advice here and not place your company at legal and financial 
risk by basing decisions on comments (well intentioned though they may be) on 
an e-mail list. 

You don't want to make key business decisions on "beliefs".  

There are other commercial companies doing what you are proposing to do. 
However, the devil is in the details.

To an extent, the intentions of the various R related copyright holders do not 
matter. The copyright holders, who are not themselves software licensing 
lawyers, may not be fully cognizant of all of the legal implications of the 
licenses they used and how those licenses apply to specific situations. Their 
intentions, explicit and implicit, must be legally consistent with the licenses 
under which their code and R are released. The R Foundation cannot make a 
proactive decision to let you do something that is in violation of the GPL as 
the R Foundation would put itself at legal risk.

One of the key points in the GPL licensing scheme, is that one need not get the 
permission or the opinion of every copyright holder involved in the code that 
is desired to be used. Once the copyright holders have made the decision to 
release their code under the GPL, the only consideration is whether or not the 
subsequent use of that code by others is legally consistent with the GPL. I 
can't stop you from doing something with my GPL code, as long as you honor the 
GPL, even if I might disagree with the application of my code to a particular 
task (eg. http://www.gnu.org/licenses/gpl-faq.html#NoMilitary).

It is when you make the decision to build and distribute (at no cost or 
otherwise) closed source software on top of open source software that things 
get dicey.

Thus, what will matter in the end, at some point down the road when you have a 
closed source commercial R product, with revenues at risk, is whether or not 
the the R Foundation and/or the FSF, will contact you due to a violation of the 
GPL because of the **specific** way in which your closed source GUI interacts 
with R. The FSF will have an interest here, because R is a GNU project, not to 
mention, ensuring that the GPL is properly enforced.

The FSF has already shown that it will independently undertake such 
communications on behalf of GNU projects and enforcing the GPL license. That 
recently happened, for example, with GNU Go for iOS via the Apple App Store, 
resulting in the removal of that product. In addition (timing is everything), 
the Software Freedom Conservancy just won a judgement against Westinghouse due 
to a GPL violation:

  http://www.linuxplanet.com/linuxplanet/reports/7145/1/

While the details of these situations are not directly applicable to your 
query, it is a demonstration that GPL enforcement is moving forward in the 
courts and legal precedents are being established. In the end, all of that is 
good, because it will be helpful to others to better understand the legal 
boundaries and interpretations of the GPL as they apply to specific situations.

So there is a real risk to your company, dependent upon fairly low level 
programming and operational details, which can impact whether or not you can 
sell a closed source GUI that runs on top of R. 

At the end of the day, you have a fiduciary responsibility to your company to 
seek formal legal advice. That is part of the cost of doing business and making 
informed decisions.

HTH,

Marc Schwartz


On Aug 6, 2010, at 8:42 AM, Tom Quarendon wrote:

> It wasn't the intention of the GPL I was really interested in, I believe I 
> understand that (or at least I believe I understand the FSF view on things), 
> it was the intention of the authors of R. I believe that the FSF view linking 
> to a DLL creating a derived work and hence you are "infected" by the GPL. "If 
> you want to use GPL code you can, as long as you're willing to be GPL 
> yourself". This doesn't appear to square with the intention of the R authors 
> to allow non-GPL add-on projects with native code.
> 
> 
> 
> Tom Q.
> 
> 
> 
> From: Tal Galili [mailto:tal.gal...@gmail.com]
> Sent: 06 August 2010 12:28
> To: Tom Quarendon
> Cc: Duncan Murdoch; r-help@r-project.org
> Subject: Re: [R] Is R GPL or LGPL (or can I write a commercial front end to 
> R)?
> 
> 
> 
> From what I've seen on other OSS project, GPL can be a bit viral, making it 
> (purposefully) difficult for someone to close the source code for free reuse.
> 
> 
> 
> My tip for you would be to try and see what REvolution computing has been 
> doing with their product (which is a repackaging of R with more code which is 
> proprietary).
> 
> 
> 
> Also, Richard Stallman (the author of GPL, and other one or two meaningful 
> pieces of code, if to understate) gave a talk on "free software" and GPL 
> during his talk on useR2010.  I don't think he'll say something that would 
> directly answer your question.  But it could give you some insight to what 
> such people "expect" with their GPL licence... it might be worth a listen:
> 
> http://www.r-statistics.com/2010/07/richard-stallman-talkqa-at-the-user-2010-conference-audio-files-attached/
> 
> 
> 
> 
> On Fri, Aug 6, 2010 at 1:59 PM, Tom Quarendon 
> <tom.quaren...@teamwpc.co.uk<mailto:tom.quaren...@teamwpc.co.uk>> wrote:
> 
> I think you're misunderstanding me, or I am you.
> I'm not wanting to change the license under which R is distributed (though if 
> it is dual licensed to anybody already that would be interesting), simply 
> trying to understand the intention of the license grant. It is clearly stated 
> that it is the intention that you be able to write a addon package and 
> release it under a non-GPL license. I think I understand the effect of the 
> GPL and LGPL (or at least I have my opinion) as it pertains to R, and as far 
> as I understand GPL and LGPL I don't see it allows the intended grant of 
> being able to link to R.dll to write an add-on package and release that 
> package as non-GPL.
> Also, as you say, there are potentially many copyright holders to consider. 
> The R foundation holds the copyright of all of the R source code, but there 
> may be other third party libraries that are included as part of R (for 
> example there might be a math library somewhere, or a graphics library -- 
> don't know, just examples I can think of), and the license to those will 
> matter with respect to whether R.dll could ever be released under LGPL. But 
> beyond that, at some level it isn't the license that matters but the 
> intention. If the intention is to allow something, then the R foundation 
> won't sue even if the letter of the license prohibits it (clearly they could 
> change their minds, but you know what I mean).
> So, as I say, I'm not after legal opinion, simply what the intention of the 
> foundation is, or the commonly understood intention. I believe that there are 
> commercial products that do exactly what I was describing (I believe that 
> there are commercial products, not GPL licensed, that operate as front ends 
> to R, using the invocation API, and not just invoking the R executable), so 
> at least someone somewhere thinks it's OK. Since the mailing list is the only 
> communication channel I'm aware of I'm using it. If you think there's a more 
> appropriate communication channel, then I'll use it.
> 
> 
> 
> -----Original Message-----
> From: Duncan Murdoch 
> [mailto:murdoch.dun...@gmail.com<mailto:murdoch.dun...@gmail.com>]
> Sent: 06 August 2010 11:47
> To: Tom Quarendon
> Cc: r-help@r-project.org<mailto:r-help@r-project.org>
> Subject: Re: [R] Is R GPL or LGPL (or can I write a commercial front end to 
> R)?
> 
> Tom Quarendon wrote:
>> Note I'm not asking for any legal advice here obviously, simply what the 
>> intention of the R foundation is with regard to allowing commercial 
>> connection to R.
>> 
> 
> I can't speak for the R Foundation, but I can say that its intentions
> aren't all you have to consider.  R has many copyright owners.  You need
> to get permission from all of them if you want a special license, so the
> easiest thing is to stay with a GPL v2 compatible license.  If you don't
> want to do that, then you could go ahead with some other license and see
> what happens, but it might not be until your project becomes popular
> that someone decides to take action.  So in the latter case I'd get a
> legal opinion, not a mailing list opinion, before I invested a lot of
> time or money.
> 
> Duncan Murdoch
> 
>> I've looked at various threads on the r-devel archive and it looks like this 
>> may have been discussed before, but as far as could tell, not to any great 
>> resolution, and not, it seems, specifically covering this angle.
>> 
>> 
>> 
>> In the doc\COPYRIGHTS file it is made clear that the intention is that you 
>> can write R packages that include functions implemented in C (and hence are 
>> provided in native libraries linked to R.dll) and distribute them under 
>> licenses not compatible with GPL. This was achieved by making the relevant 
>> header files available under the LGPL. This was an explicit change that was 
>> made in February 2001, and the intention was to allow for DLLs that require 
>> the API header files for compilation and are linked against R.dll to not be 
>> "infected" with the GPL.
>> 
>> However the Rembedded.h header file isn't included in the list in the 
>> doc\COPYRIGHTS file, and the copyright statement in the Rembedded.h header 
>> file lists the GPL and not the LGPL as the relevant license.  So it doesn't 
>> look like it was the intention to allow that I be able to use the R 
>> invocation API to launch R and embed it in a product (such as a new GUI, or 
>> other such integration) and ship that product under a license not compatible 
>> with GPL. Is this correct? Or is it the intention that I be able to write a 
>> commercial front-end of some kind for R?
>> 
>> 
>> 
>> My understanding of LGPL is that ALL of the source files that go into R.dll 
>> (and indeed all libraries that R.dll itself linked to, apart from those 
>> covered by the GPL system library exception) would need to be released under 
>> LGPL in order to allow me to link to R.dll and not have my program subject 
>> to GPL. If that weren't the situation then I could take a library covered by 
>> GPL, write a different interface to it, put LGPL on those headers compile up 
>> a new DLL and I've then got LGPL access to a library previously released 
>> under GPL, which can't be the intention, otherwise LGPL would drive a coach 
>> and horses through GPL. This would apply to native libraries (dlls) 
>> providing functions in addon packages too, and so hence I'm not sure I 
>> necessarily understand how simply putting LGPL on the header files is 
>> sufficient to achieve the intention.
>> 
>> 
>> 
>> There is provision in the GPL license (it's mentioned in the FAQ) for 
>> providing for linking to a GPL library through one specific interface by 
>> providing specific exception text in the copyright header in all of the 
>> files that make up the library. That would only be possible if the copyright 
>> holders of all relevant GPL code agreed to that, as that would be an extra 
>> grant to the license. So if R linked to any third party GPL code, this 
>> wouldn't be possible I don't think.
>> 
>> So I guess the question here is what the intention is of the R foundation 
>> with respect to the limitations or freedoms that they are intending to 
>> allow. After all, as the copyright owners they aren't going to sue if a use 
>> falls within their intention, even if on a strict interpretation of the 
>> license such use wouldn't be allowed.
>> 
>> 
>> 
>> So it seems to be the intention that I can write a DLL to provide R 
>> functions in an add on package, which requires linkage to R.dll. Not 
>> convinced that the license it set up right to cover that, but that appears 
>> to be the intention. Question is whether at the other end, at the invocation 
>> API end, whether it is the intention to be able to use the invocation API 
>> and link to R.dll without my program being subjected to GPL.
>> 
>> 
>> 
>> Note that I'm not talking here about anything to do with code written in the 
>> language of R. This is purely concerned with treating R as a library with an 
>> interface and wanting to link to that interface and whether the intention or 
>> the actuality of the license allow that.
>> 
>> 
>> 
>> Thanks!
>>

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to