6 ms·
It's really depressing to see these people not believe copy left is enough, and think we have to main our programs and make them less composible in addition. In
by Ericson2314 6y ago
It's really depressing to see these people not believe copy left is enough, and think we have to main our programs and make them less composible in addition. Intentional impediments to code interopt are absolute heresy given my own ideology of free software, and I wish rather than being on the defensive someone would argue that more forthrightly.
I hope in the last 5 years the situation has changed.
- kmeisthax 6y agoRichard Stallman's schtick with copyleft isn't so much to lock a particular program into a Free Software license, it's to use Free Software as a cudgel to demand licensing concessions from other software vendors. An obvious example of this would be GPLv3's anti-TiVo clause, although in that particular case there's a direct connection between locking down hardware and your nominal right to modify the software being practically curtailed. The bargain the GPL tries to strike is "you can do whatever you like with the program as long as you don't restrict the user's freedoms to use, distribute, or modify the program". GPLv2 only talks about legal restrictions to user freedom, v3 extends that to curtail technical restrictions, too. One oft-overlooked controversy is that of GNU readline. You see, RMS decided specifically to release readline as a GPL library so that anything that used it had to be GPL, too. This actually worked - for example, CLISP relicensed itself specifically to comply with GPL terms on readline. There's an old e-mail thread between RMS and CLISP's author, Bruno Haible, which I'm going to have to make an extended quote of as it's really telling: (quoted from https://web.archive.org/web/20131111095101/http://clisp.cvs.sourceforge.net/viewvc/clisp/clisp/doc/Why-CLISP-is-under-GPL https://web.archive.org/web/20131111095101/http://clisp.cvs....) Bruno: I could provide a libnoreadline.a and let the user choose to link lisp.a with either GNU's libreadline.a or my libnoreadline.a . Would that convince you that lisp.a "can be reasonably considered independent and separate work" ? RMS: No, and I doubt it would convince a judge either. I'll have to insist that you stop using readline unless you make the program free. Bruno: If someone was to turn the readline library into a shared library (a library that is needed at runtime by the executable, but not contained in the executable): Would that mean that any executable that uses a readline shared lib would have to be accompanied with full source? RMS: Yes. The sum total of what you are doing is still tantamount to distributing one program which contains readline but is not under the GPL. Bruno: So the only reason why you may object is that my lisp.a has an INTERFACE that allows it to be linked to libreadline.a . As far as I know, only the readline CODE is copyrighted, not its INTERFACE. (Would you object because my libnoreadline.a has a similar interface?) RMS: I say this based on discussions I had with our lawyer long ago. The issue first arose when NeXT proposed to distribute a modified GCC in two parts and let the user link them. Jobs asked me whether this was lawful. It seemed to me at the time that it was, following reasoning like what you are using; but since the result was very undesirable for free software, I said I would have to ask the lawyer. What the lawyer said surprised me; he said that judges would consider such schemes to be "subterfuges" and would be very harsh toward them. He said a judge would ask whether it is "really" one program, rather than how it is labeled. --- RMS doesn't entirely answer the question about interfaces, because he responds with an example about NeXT, but I can smell the same logic here. Bruno is asking if APIs carry copyright, and Richard Stallman does not say no. He specifically argues that the existence of a version of CLISP that can be linked with readline is enough to trip the GPL. This is dangerously close to the Oracle v. Google case, played out 30 years ahead of it's time on a private mailing list between two people who really shouldn't be fighting. The only reason why RMS doesn't explicitly say "yes APIs are copyrightable" is probably because... 1. Arguing against Free reimplementations is hypocritical - especially today when we have three non-GPL readline implementations. 2. Bruno decided to GPL CLISP anyway (because Linux was getting lots of contributions). I'm surprised the FSF hasn't commented on this case further, though I can imagine why. Seeing the absolute stalwart of Free Software argue in favor of Larry Ellison has been a huge yikes moment for me. In fact, one way to interpret Oracle v. Google (in the light of OpenJDK existing), is that of a massive GPL compliance lawsuit. Free reimplementation is how we got GNU and BSD; but RMS being any kind of right here imperils the right to reimplement... all so that Steve Jobs couldn't extend GCC.
- Someone 6y agoI don’t think you can conclude that lawyer said anything about whether APIs are copyrightable. I think that lawyer said “if you create that interface for the sole/main purpose to get away with having to license your code under the GPL, judges will consider it subterfuge”. It’s like arguing “I didn’t take a cookie out of your cookie jar. I turned the jar around and later found a cookie lying on my desk”. Saying that’s stealing doesn’t imply that eating cookies you find lying on your desk is stealing. I would think that, if a third party created a common interface to them to give users choice as to what UI they provide (releasing the GNU readline wrapper under the GPL, the BSD readline wrapper under a BSD license, etc), CLISP could say “feel free to replace the BSD readline we ship with with another one)
- jancsika 6y agoStallman is saying he's surprised-- probably in the same way many on HN always are-- that a judge would, you know, use judgment. I.e., one program that would trip the GPL chopped into two in an attempt to not trip the GPL part of the program which is still there! His lawyers are telling him the judge would a) see the part with the license the person wants to avoid, b) see the subterfuge to do an end run around it (in both cases they are asking Stallman directly abou it), and c) judge harshly as a result. I don't know if his lawyers were right, but that's the argument. With Google vs. Oracle, part 'a' doesn't exist. Google did a clean room implementation under the Apache license-- there's no Oracle-licensed software behind the curtain of the headers. So Oracle's only chance was to claim that an API is copyrightable. If it's not, that's the ballgame. But in the examples you gave wrt Stallman, API copyright doesn't matter-- it'd still be subterfuge to avoid triggering a license for the 2nd part of the program (at least according to his lawyers). Edit: clarification
- p_l 6y agoFunnily enough, the current state of the art in understanding GPLv2 is completely opposite (albeit disputed, see SFC vs Canonical on ZFS in Linux). The critical part is whether the software is derived, as that is the language used by GPL, and it can be hard to claim that optional line editor - as many other lisp implementations showed, you can really go far with dumb (loop (print (eval (read)))) However, RMS had an obvious agenda involved, and libreadline was one of the major cugels used by FSF for significant part of 1990s. There's a reason why the term "GPL virality" stuck.