"It's not an easy problem taking the best of each, figuring out what the long-term convergence plan is."
That's an understatement. The complexity of merging two fairly distinct VMs while trying to maintain feature parity with both separate previous versions, and taking the best features of both? Eighteen months seems optimistic. I also hope they have some incredibly good way of producing a combined test suite, because this seems like the most promising way of introducing myriad subtle bugs I can imagine.
I doubt it was the developers who are responsible for the merging who came up with an 18 month estimate. Invariably it's not going to happen on time or if the 18 month milestone is hit, it'll stay alpha for quite some time. JDK7 + merging of 2 distinct VMs? Sheesh...
Oracle certainly has money to throw at the problem. The question whether the problem is one that can be solved by throwing lots of money at it will be answered in 18 months.
That's my bet too. And I am quite happy with it. If Oracle completely botches their proprietary, poisonous implementation, OpenJDK may gain some popularity. The biggest risk is giving .NET a more easy market.
Oracle is a pragmatic company. It's likely they'll just merge the easy stuff.
If there is insanely great stuff in the intersection you mention, it probably constitutes a research project, which it would make sense to undertake in the background (if at all). For Oracle, the only "insanely great" that counts is that which yields benefits that customers will pay for now/soon - not what's technically impressive. They're a sort of microsoft-research anti-particle. disclaimer I actually have no idea.
Agreed. Of course, people were content with Java because it was open source... could this divert mindshare into a truly open source system? LLVM or Parrot, perhaps?
Here's to hoping it happens in a constructive way rather than becoming so fragmented it's no good.
A lot of the value of the JVM comes from the libraries and tooling that have grown around it over the years. Replacing both the JVM and all that support code is going to be a hell of a lot of work.
I hate to say it but a lot seems to depend on the ability of Oracle to make the smart move here.
We can simply remove all references to Oracle trademarks from the OpenJDK and continue with it. It may be unable to run software that targets Oracle's evil VM, but it will happily run whatever is built for it.
Exactly. The great thing about Clojure or Scala compared to other funlangs is that I can walk into just about any big "enterprise" shop and plug transparently into their codebase and toolchain. This is a crucial adoption vector for FP and the struggles other funlangs have gone through to bootstrap themselves underlines this.
> I can walk into just about any big "enterprise" shop and plug transparently into their codebase and toolchain
What is the oldest JVM Clojure can run on? Many "big enterprises" run technology that's years behind the latest and greatest. And I have been waiting for 1.7 since the time I actually wrote Java code.
What does (did?) OpenJDK give the open-source hackers anyway? A freely distributable Java to go along with your Linux distribution?
I doubt the JIT part is accessible to many developers - and those who want to adapt the JIT (= mobile hardware vendors, at this stage) could always strike a licensing deal with Oracle. There are already plenty of interpreted VM implementations, so it's not the general lack of a VM either. Sun's JVM was always freely available and downloadable, even though it sometimes contains Yahoo Toolbar.
But that's just the problem... If Oracle makes the "standard" JVM entirely proprietary, then they are under no obligation to provide it for free.
I'm sure they'll always provide a free version for desktop users, in the interests of having a wide install base. But given the pricing schemes for other Oracle products, I fully expect you'd start seeing things like per-CPU licensing for enterprises, and developer licences for the JDK.
Unless something happens, I'd be VERY surprised if the "standard" JVM is still "free to use", let alone open source, in 5 years.
That might be possible (free desktop edition, limited to 2 cores and 8GB RAM?), but I can't honestly blame Oracle for wanting to make money out of Java. Sun had the COBOL of the 21st century and still failed to make much money out of it. Oracle isn't going to make the same mistake.
they are probably going to kill Java... in a market segment where it has been chronically ill for years.
Java Enterprise is alive and healthy, thank you very much. No reason to believe that it will not continue to do pretty good for the next decade at least.
It will enter "legacy-mode". The prophecy of Java being the 21st century COBOL will be, at last, fulfilled. Old systems will be maintained and extended as long as they remain useful. New systems will be initially deployed on those platforms but, as new programmers grow less and less familiar with them and thus costlier to train, new technologies will emerge and take its place like Java took COBOL's (at least part of it).
All of this happened before, and it will happen again.
So what would happen if a large company in Redmond hired/contracted a bunch of ex-Sun engineers to make a java->.Net compiler so all this stuff ran on the CLR
As Oracle makes it harder and harder to use the JVM people are forced into the waiting arms of MSFT
Considering Oracle's two recent actions against open source projects, I'd suspect this is yet another move to minimize the amount of open source software under its control.
More like remove... it seems like they are trying to shed away the open source parts of projects where they think they can still extract a profit. I don't think Oracle wants to shepherd any major open source projects and the investment that entails. They would rather move Solaris and Java back to the realm of closed-source and proprietary. Hopefully in the case of Java, still keeping it close to free as in beer.
They know that the open source community won't be able to seriously fork Java/OpenJDK. Even with newer JVM languages, Java's place has been cemented in enterprise environments. And if it is one thing Oracle knows, it is how to sell to the enterprise.
I'm not sure that I would do much differently if I were them either. Open source just doesn't seem to be in their DNA, and it's been quite successful for them. Even if it is to the detriment of others...
It may become impossible to get the newest JVM under an open-source license, which would mean that they wouldn't benefit (much) from Sun/Oracle's future development efforts.
That's an understatement. The complexity of merging two fairly distinct VMs while trying to maintain feature parity with both separate previous versions, and taking the best features of both? Eighteen months seems optimistic. I also hope they have some incredibly good way of producing a combined test suite, because this seems like the most promising way of introducing myriad subtle bugs I can imagine.