|
|
Subscribe / Log in / New account

Stallman consistency

Stallman consistency

Posted Nov 13, 2006 23:31 UTC (Mon) by man_ls (guest, #15091)
In reply to: Sun releases Java under GPLv2 by iabervon
Parent article: Sun releases Java under GPLv2

Maybe I have been reading Stallman's writings for too long, but I think I understand his ideas. I will indulge in a bit of cheap exegesis.

Stallman is always very explicit that "intellectual property" is not a precise term; copyrights, brands, patents, etc. must be dealt with independently. Furthermore, he never worries about access to brands, or limited access to artwork; it is mostly code that his writings are about -- and patents in so far as they limit distribution and use of code. The reason is that software is functional, it does things; but you can call your software a different name or stick a different logo, and it will behave the same. Besides, brands are a legitimate way to protect the integrity of your product, even if it's free software. I think that specifications lie on the "don't care" side of the fence; you can specify whatever you want, that we will implement what we like.

When we asked for "free Java", many people confused "free specification of the language" with "free implementation of the virtual machine and class libraries". The Sun claque screamed about the perils of Java language fragmentation; the free software fanclub replied that we only wanted a free implementation.

Let Sun choose what "Java" stands for; if necessary, we shall call our version "Gnava" or whatever, just as Ghostscript is a free implementation of Postscript and we all live happily ever after. But now the free implementation does not need to play catch-up incessantly with the growing number of Java-related specifications. Even more importantly, it does not need to carry all the dead weight -- AWT, Swing, Java logging or the obnoxious decisions to bundle the complete Xerces and Xalan. We can build a slim profile server-side Java, download components as needed or even add our own libraries.

Now, we all have what we want. This move is both cheaper and more effective than the JCP, JSR's and related "community" efforts to define the language and the extensions, so we can regret that it was not done before. On the other hand, we can rejoice in the fact that the moment has finally come. Java and free software are meant to be just as Unix and GNU were; this is a great day.


to post comments

Stallman consistency

Posted Nov 14, 2006 1:12 UTC (Tue) by iabervon (subscriber, #722) [Link] (2 responses)

It's particularly in light of "intellectual property" being an unusably vague term that I find his use of "Java" surprising, especially with the confusion over what "free Java" would entail. It seems to me oddly careless of him not to be talking about "a free Java implementation", but rather talking about this particular implementation as being somehow more inherently "Java" than others.

There's the futher confusion that we didn't ask for a free UNIX; he just wrote one. Then asking Sun for a free Java is confusing, because the only barrier Sun places to just writing your own Java is the brand license, and there's no obvious reason to ask for a free Java implementation from Sun rather than from, say, IBM.

I think he also cares about specifications; it's not important that they be modifiable (in fact, they're most useful when not even the owner may modify them, by policy), but they have to be available under terms that don't restrict distribution or implementation. I.e., we don't have to be allowed to specify what we want, but we need to be able to discuss what programs are going to expect our implementation to do. That's one reason to want to TCKs: so that we can tell that Gnava behaves as JBoss and Eclipse expect, assuming they're looking for a Java-specification-compliant platform.

Today is clearly a good day for free Java, because there's now a (mostly) complete GPL Java implementation known (by reputation) to be fully-compliant. But I wouldn't call it that revolutionary without the TCKs. For example, the obvious thing to do is built it for your favorite unsupported architecture. But hotspot is producing and running native code, which is going to be a problem if your arm JVM is generating and running x86 machine code. So that needs to be written, but then it's impossible to tell if it's perfectly correct without the TCK to test it. I don't see today's release as being fundamentally any more significant than if Classpath were to have completed their implementation and someone with the TCKs reported that it passed.

Stallman consistency

Posted Nov 14, 2006 3:27 UTC (Tue) by xoddam (subscriber, #2322) [Link]

> confusion over what "free Java" would entail

Go and re-read the transcript. The interview took place before the
announcement and does not once mention trademarks and language
definitions. It's about software. Stallman is not in the least
ambiguous: "if SUN's Java implementation becomes free software, it will
be a part of our community".

> talking about this particular implementation as being somehow more
> inherently "Java" than others.

He's not talking about this implementation when he says "SUN should have
made Java free software before". He's talking about what Sun came up
with many years ago, which was unambiguously the first and only Java
implementation. The trademark, standardisation and validation business
came about through historical accident after Microsoft's co-optation of
code it licensed from Sun. If Sun had licenced Java to MS under the GPL
in the first place then embrace-and-extend would have been quite
impossible.

Your point about the specification (which is already freely available)
and compliance test suites (which are not) is absolutely correct. I
think the interview didn't cover this issue at all. I hope (and presume)
that Sun will release its TCK in some acceptable form soon. Probably not
GPL, but you never know.

Stallman consistency

Posted Nov 14, 2006 22:32 UTC (Tue) by man_ls (guest, #15091) [Link]

There's the futher confusion that we didn't ask for a free UNIX; he just wrote one.
Maybe we didn't ask -- as long as proprietary software was just starting to be, and universities could get liberal terms from AT&T, the necessity for a free Unix was not so concerning. The moment people started to care BSD spread like wildfire.
I think he also cares about specifications; [...] That's one reason to want to TCKs: so that we can tell that Gnava behaves as JBoss and Eclipse expect [...]
Maybe, and your argumentation seems quite sensible to me, but I haven't seen Stallman ask for freely distributable specifications. Maybe he hasn't thought this aspect through. Somehow I doubt it: the TCKs are mostly important for certification, because actual compliance can be measured in different ways such as following the spec or even reverse engineering. If Red Hat or another deep-pocketed organization wants to certify their own customized version of the JVM they can pay for it. For most of us, complying with the freely available spec (and behaving like Sun's implementation) might be enough, if we are to judge by other free software programs.
I don't see today's release as being fundamentally any more significant than if Classpath were to have completed their implementation and someone with the TCKs reported that it passed.
Make it "if Classpath passed current TCKs and we had an assurance that it would pass any future TCKs as soon as possible", which would be no small feat in itself.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds