Article View: gnu.misc.discuss
Article #72567GPL and Public Domain
From: Craig Burley
Date: Mon, 27 Jan 1992 18:34
Date: Mon, 27 Jan 1992 18:34
126 lines
8264 bytes
8264 bytes
One thing I think people should be aware of in this long and frequently redone discussion of the merits or demerits of the GPL is that the claim that "the GPL doesn't let me make code 'free' like public domain" is misleading. The "problem" with the GPL does not specifically have to do with any restrictions on code protected by it. The GPL exists specifically to _ensure_ the "freedom" of the code, its source, and those using it to have access to said code. The "problem" with the GPL is that there are people who refuse to abide by these free terms, and this can impinge on the ability of others who wish to incorporate GPL code and their own in a linked executable. However, the problem lies almost entirely with those who refuse, down the line, to abide by the GPL "freedom requirements". If this seems strange to you, consider: if a software corporation had as a requirement that any code written for hire or in any way used by them in their software _not_ be public domain, would that make the placement of code in public domain "less free" than, say, under some sort of license or non-published basis? Answer: no. It's the problem of that corporation, and the people who wish to provide software to it, that, say, a public-domain C compiler couldn't be used. Attempting to persuade people coding new applications for public-domain release that "they shouldn't release to the public domain because it won't be as free as <xyz license acceptable to given software corporation>" would clearly be absurd. Basically we have the same situation with the GPL. Just as placing a work in the public domain effectively _does_ place some restrictions on it (as is necessary to make the placement effective), so does placing a work under the GPL. The GPL isn't excessively restrictive simply because various firms or people refuse to work with GPL-protected code; that is their problem. Any license's restrictiveness should be looked at in terms of the license itself, not the population that is or is not willing to bear its burden. In effect, "public domain" is another form of license -- a blanket license supplied and enforced (in some manner) by various governments. It is not universally acceptable, so claiming the GPL is too restrictive simply because _it_ is not universally acceptable serves to obscure the issue. The GPL is somewhat more restrictive than the PDL (Public Domain License) because (in summary) it requires that: code protected by it cannot later be protected by a more stringent/restrictive license; code protected by it must be provided, or accessible, in source form. Both of these restrictions serve primarily to enforce the _freedom_ of the code and its users by restricting the ability of people to _increase_ restrictions otherwise. Some people might say that having to provide source is too restrictive. Perhaps for some cases it is. But the means of restriction is sufficiently flexible, IMHO, to handle most or all such cases except where the purpose of restricting source distribution is basically to prevent the public at large from knowing how to change the operation of the product. An exception I might agree with, for example: code that operated a dangerous device that itself was accessible to "ordinary people" (like a microwave) but where the code performed actions critical to keeping the device operating safely. Such an example is a good one where distributing source might be unwise; it might encourage people to try and add a "new feature" to the device by modifying and rebuilding the software (and perhaps blowing new ROMs), risking making the device run outside safety margins. On the other hand, the chances that somebody might find a deadly bug in the code (and would not have been able to see it without the source being distributed) goes up by one or more orders of magnitude (and the very fact that the source is distributed might encourage the engineers to be a bit more careful? :-). So, just as I might say "I refuse to use public domain code because I can't release it and claim it's mine; I can do that, given appropriate license negotations, with licensed code", and leave it to others who wish to provide me with code to denounce public-domain as a "restrictive" means for releasing code, there are many people who refuse to use the GPL because they can't _increase_ the restrictions on code, and leave it to others who wish to supply them to denounce the GPL accordingly. (And those "others" are the ones who most often publicly object to the GPL. I've giving them the benefit of the doubt that they aren't secretly wishing to release GPL-protected code under _more_ restrictive licenses.) BTW, my interpretation of the GPL has always been that I could, if I wished, place, say, the entire sources of my fortran front end in the public domain, even though they are (or will be) linked with GPL-protected sources for the gcc back end and distributed as an executable (a fortran compiler). I believe I could do this even if I did the linking and distributing of said executable myself, as long as I distributed the sources to all the code (including my fortran front end) as required by the GPL. (And, of course, placed clear notices as to which code was protected by which mechanisms.) Now, I won't do this, because even though placing my fortran front end under the GPL will likely prevent some potential compiler vendors using it, the alternatives I know of all seem to permit the vendors to use it and distribute the results in such a way that I could no longer help maintain in an independent fashion and/or that others could not share the improvements made in it for those vendors' products. That doesn't mean the GPL is more restrictive in a bad sense. It just means there are people who want to release software more restricted than permitted by the GPL (and perhaps even than PD), and that's really their problem, not mine. Although this sentiment might generally apply to all licenses, the GPL is one that, fairly uniquely, offers (and practically ensures) freedom to the code it protects and the users that use that code. The restrictions it has serve primarily to uphold those freedoms in today's legal context. So, instead of objecting to the GPL on the grounds that PD is "freer", I object to those who refuse to use GPL-protected code because it is is "too free" -- they are the ones who are causing the difficulties, and (supposedly) forcing various people to complain that the GPL "isn't free enough". This isn't to say the "problem with the GPL" is solved -- if you really want to write code that is capable of being legally wrested away from you by modifying it in trivial ways, you indeed can't use GPL-protected code in it -- but your problem might or might not be solved by the availability of equivalent PD-protected code, depending on who you're going to be dealing with. Further, there are probably many organizations that don't yet recognize the GPL as equivalent, to the extent they care, to PD code, and hence might permit acquisition of PD but not GPL code via certain channels. Again, it is up to those organizations to change. I hope I've been technically and legally accurate in this post -- but you're on your own, because I'm not a lawyer, nor an FSF rep. I am interested in any definitive FSF answers on whether the GPL permits the scenario I described above. -- James Craig Burley, Software Craftsperson burley@gnu.ai.mit.edu Member of the League for Programming Freedom (LPF)
Technical Details
Message-ID:
<BURLEY.92Jan27133449@geech.gnu.ai.mit.edu>Path:
arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!bu2.bu.edu!bu.edu!ai-lab!life!burleyShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1025b4,43e2571579f01df0,start X-Google-Attributes: gid1025b4,public X-Google-ArrivalTime: 1992-01-27 10:54:27 PST Path: arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!bu2.bu.edu!bu.edu!ai-lab!life!burley From: burley@geech.gnu.ai.mit.edu (Craig Burley) Newsgroups: gnu.misc.discuss Subject: GPL and Public Domain Message-ID: <BURLEY.92Jan27133449@geech.gnu.ai.mit.edu> Date: 27 Jan 92 18:34:49 GMT Sender: news@ai.mit.edu Distribution: gnu Organization: Free Software Foundation 545 Tech Square Cambridge, MA 02139 Lines: 126