IBM Offers to Help Sun Open Up Java
dave writes "ESR has opened the issue of
pressuring Sun to open source Java, and today IBM throws in their own
commitment toward this end. IBM has published an open letter to
Sun, proposing that the two companies collaborate on an independent project
to open source Java, saying that IBM is ready to provide technical resources
and code for the open source Java implementation while Sun provides the open
source community with Sun materials, including Java specifications, tests and
code."
IBM has a less well known Java VM for embedded systems called j9. This was developed in a clean-room way. If IBM wants an Open Source, commercial quality VM, there's nothing stopping them from opening this one.
Everyone's read ESR's open letters, but the real, convincing, extremely well-written case was done by Ganesh Prashad in a Linux Today editorial yesterday. Ganesh lays it out in terms Sun can understand, without ESR's controversial style. This article is a must read for us, but it's also something that should be absolutely wallpapered in Scott McNealy's office, and maybe his home too.
.NET if they don't let the community galvanize and help out, and the only way to do that is to open source the Java core.
Ganesh very clearly demonstrates how Sun will lose J2EE's 'lingua franca of business logic' status to
Tired of FB/Google censorship? Visit UNCENSORED!
IBM could do as you suggest. Then again, they have already written their own Java compiler (Jikes), at least one of their own JVMs, their own servlet container (Jakarta), etc...
I'd recommend looking at this page for more info on IBM + Java + OSS.
IBM has already written at least one high-quality JVM implementation which is not OSS because of contracts that IBM has with Sun. Of course, suggesting that IBM work on GCJ and Classpath has some merit in and of itself. But realize that IBM has sunk untold man-hours and dolars into developing its own JVM - resources that they now wish to contribute to the community at-large as OSS. I personally can't blame them if they didn't wish to spend a similar amount of resources on GCJ and Classpath when what they've got works.
Perhaps with this Open Letter IBM is looking for permission to open up the code. Perhaps they are looking to collaborate with Sun to create an even better project. Perhaps this is all just marketing/PR bs. Time will tell.
Dom
I HAVE written a VM from scratch, and worked on Sun and IBM's Virtual Machines. I can tell you from experience that writing a VM is definately not a trivial task. In fact, it is probably harder than the libraries. The libraries are by definition Java code. The major problem is the sheer size of them.
A modern VM on the other-hand, covers a wide range of techniques. Writing an efficient thin-locking implementation is far from trivial - the code is extremely complex, and even a slight mistake can lead to race conditions, leading to unexpected behaviour which is very difficult to track down.
Likewise, a modern garbage collector is an advanced field in itself (e.g. parallel collectors, generational collectors, etc.). Again, a simple mistake can take weeks to find.
Have you also forgotten about the JIT? Or more accurately a DAC (dynamic adaptive compiler). Whereas a standard compiler can spend as long as it likes optimising the code and be slow as hell, a modern VM must profile the code on the fly, and transfer control between compiled and interpreted modes efficiently. Again, not trivial.
Even following the spec is non-trivial. There's enough grey areas to cause a VM implementor to pull their hair out.
Sun and IBM have large teams working on these VM's, many from research backgrounds and with PhDs (including me). Thanks for calling us all monkeys.
If Microsoft "borrowed" GPLed code and tried to hide it not only would they open themselves up to a serious lawsuit from the copyright holders (with serious monetary penalties), but they could theoretically end up having to share any source code that came in contact with the GPLed code.
This is what the FUDsters would have us believe, but it's not true. As Eben Moglen, General Counsel for the FSF, has repeatedly pointed out, the GPL is a license, not a contract.
One of the consequence os this is that you can't force someone to open up their own code if they link against GPL'ed code in violation of the license. At most, you can force them to stop using the GPL'ed code.
See this lengthy rebuttal by Pamela Jones of Groklaw fame, or this more accessible, shorter version.
Ulrik
Database engine for analyzed or annotated text