Steve Blackburn wrote:
Dalibor Topic wrote:

Many people don't see the need to look at non-free software in general, and chances are pretty slim that anyone I know will ever get that bored and out of reading material to accept the 'Read only' license, for an example of a very funny non-free software license.


I have never looked at non-free implementations, but I am interested to know what this means for those of us who have extensive exposure to implementations such as Kaffe (GPL) or Jikes RVM (CPL). My reading of it is that I can't work on any part of Harmony for which I am tainted by my Jikes RVM exposure without permission from the copyright holder of Jikes RVM. Is that right?

Nope. :)

You can look at free software and work on other software as much as you want to, as free software licenses do not claim further rights beyound the rights granted to the author through copyright laws. I.e. if you copy or modify free software works, you are bound by their license terms, as the copyright laws grant the authors a say in derivative works. If you don't do that, then the author has no say in your own, original work. You are allowed to study free software (freedom 1 [1]). You can do what you want with that knowledge, modulo patents and creating derived works.[0]

Non-free software licenses, though, like the SCSL-derivatives covering large portions of core Java technology, make claims that go wildly beyound the rights given to the copyright holders through copyright law. For example, the SCSL claims all sorts of rights on 'Modifications', defining Modifications for the purpose of the license way beyound the scope of the copyright law.

" GLOSSARY, 13. "Modification(s)" means (i) any change to Covered Code; (ii) any new file or other representation of computer program statements that contains any portion of Covered Code; and/or (iii) any new Source Code implementing any portion of the Specifications.

13(i) is your normal copyright law. 13(ii) is your normal copyright law with an extra spin: it tries to prohibit fair use by claiming that containing *any portion* of SCSL covered code turns your code into a modification of SCSL covered code.

Given that you're writing your code in java, chances are that any class you write shares a certain amount of text with some SCSLd covered code, simply because they are written in the same programming language. So 13(ii) covers pretty much all java code ever written by anyone who licensed code under SCSL. To put more graphically, GLOSSARY,13(ii) == All your Java are belong to us

Let's get to 13(iii), which is a little more convulted. It says any *new* Source Code implementing *any portion* of the *Specifications*. New code is quite obvious, so it coveres all new code you write. Then we have a clarification, it's any new code you write that implements any portion of some specs. "implementing any portion of specs" doesn't say 'extending Object is OK', it says "there are some specs, you implement any single bit out of them, your code is covered". Both the JDK API spec and the JLS cover java.lang.Object's method signatures. If your code extends java.lang.Object, it implements "a portion" of the JLS and JDK API, since you can call the methods covered by the Object API on it. If that's too far fetched for you, take classes implementing the Serializable interface, or your classes extending SCSL covered classes, and overriding methods in them.

But the really convulted part of 13(iii) is in the reference to "Specifications". If we look up "Specifications" in the glossary, we'll find

GLOSSARY, 21. "Specifications" means the specifications for the Technology and other documentation, as designated on the Technology Download Site, as may be revised by Original Contributor from time to time.

This clause gives the copyright owner (or whoever hacks the site) a backdoor to revise the specifications, and claim violation afterwards, even if you were compliant originally. The license does not specify the "Technology download site" precisely (with some URL) anywhere. It does specify the community source download site, but that one has no JDK specs. Beautyful."

From my blog on just a few of the hidden gems of tragicomical legalese buried in the SCSL available on http://advogato.org/person/robilad/diary.html?start=46.

Free Software licenses don't start from the maximal 'we now fully own you, period' position. They start from the minimal 'we own our work, copyright law is cute, this license and copyright law together grant you broad rights, use them wisely and have fun' position and simply rely on copyright law, permissions for dervied works and common sense to sort out the authorship rights rather than claiming everything and all you come up with by default as covered by them.

You still own your own brain after studying Free software. Free Software licenses need not to explicitely tell you that, as they make no claims to your memory, or other body parts. Non-free software licenses, otoh, that make fancy claims to own you, need to somehow make sure that thinking in public is still legal after you signed them, so they have to disclaim ownership to your memory, at least :)

cheers,
dalibor topic

[0] For the record, I don't own any software patents, and regard them as a mild, cureable form of mass insanity. [1] The freedom to study how the program works, and adapt it to your needs (freedom 1).

Reply via email to