On Tuesday 20 July 2004 03:36, Bryce McKinlay wrote: > Ben Hinkle wrote: > >I'd like to port the Collections implementation in Classpath to another > >language called D that is very similar to Java and I'm trying to figure > >out the Classpath license. My question is simple: what license would > >such a port fall under? > > > >It looks like Classpath uses the GPL (not LGPL) with the "special > >exception" which states that if one links statically *or dynamically* to > >the classpath library that the sum is governed by the GPL. But then > >there is the statement that "independent modules" aren't governed by the > >GPL. So I interpret that to mean "independent modules" are ones that > >aren't linked statically or dynamically with Classpath. > > No. "An independent module is a module which is not derived from or > based on this library." > > For example, if you took Classpath collections code and made > modifications to it, the modified code is subject to the terms of the > GPL+exception, and is not an independent module. If you have some > application code that USES classpath via the public java.* APIs, this IS > an independent module. If you link it with classpath, it is not subject > to the terms of the GPL+exception.
This much is clear. Less clear to me is what happens when I create a subclass of a class in Classpath. To me it "obvious" that my class is independent of the one in Classpath: 1) it contains not one jot or tittle of Classpath code, either at the source code or the bytecode level; unless one includes things like the name of the superclass and of (some of) its members, which are surely exempt. 2) if the superclass forms part of the public Java API, there is no way to tell whether my class derives from the Classpath implementation or the Sun one or Wonka or whatever. However I am quite sure that there are people to whom it is equally "obvious" that a subclass is a derived work of the superclass. So I feel some clarification is needed here. > You can think of the classpath license as being similar to the LGPL, but > with less restrictions on the manner in which code that uses the library > may be linked. > > > I'm not even > >sure what those are. I'm guessing that using the classpath jar and class > >files are not considered dynamic linking? > > IMO, class files == dynamic linking. I would think so too, and otherwise the Classpath exception makes very little sense. But what is a "module"? Is a class module, or would that be a package? Or a jar file maybe? I've written to the FSF asking for clarification, but those particular wheels do grind exceeding slow. Chris -- Chris Gray /k/ Embedded Java Solutions Embedded & Mobile Java, OSGi http://www.kiffer.be/k/ [EMAIL PROTECTED] +32 3 216 0369 _______________________________________________ Classpath mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/classpath

