Hacker News new | past | comments | ask | show | jobs | submit login
Oracle set to merge Java virtual machines (networkworld.com)
43 points by _zhqs on Sept 13, 2010 | hide | past | favorite | 44 comments



"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.


Throwing money at it probably won't solve it.


... especially considering that quite a few of Sun's star engineers have already left.


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.


Not if they chose one of them as base and incrementally improve it with code taken from the other. Easier to test and stable at every point.


It is likely that some of each VMs design decisions are so fundamental that it precludes an incremental migration of pieces from one to the other.


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.


Sigh.

Step 1: Write a (proprietary) hybrid VM merging Hotspot and JRockit with lots of difficult-to-implement, succulent features.

Step 2: Modify the JDK 7 spec to include these features.

Step 3: Wag tail as OpenJDK slips into obsolescence.


It's really a shame that Java has fallen under the shadow of Oracle just as alternative JVM languages were starting to get really good.


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.


You're right. Very soon, all those JVMs that are installed and working perfectly well everywhere, will suddenly stop working!


> Wag tail as OpenJDK slips into obsolescence.

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.

It's a shame, but it could work.


Yes, but one of the JVMs selling points is that it's attractive to both open-source hackers and heavyweight commercial users.

If you fork it, then you're in essence splitting these user bases, to the great detriment of both.


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.


> Unless something happens, I'd be VERY surprised if the "standard" JVM is still "free to use", let alone open source, in 5 years.

Or relevant


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.


> Oracle isn't going to make the same mistake.

And will probably kill Java in the process.


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



It's VMs all the way down!


I am surprised how well it runs considering it is a VM in a VM.



Where does this put OpenJDK? I doubt Oracle is thinking of open sourcing JRockit parts...


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.


Erm... maximize?


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...


What was the relationship between OpenJDK and HotSpot ?


OpenJDK contains the HotSpot JVM

http://openjdk.java.net/groups/hotspot/


And how does this relate to VirtualBox (open-source)?


I present you teh plan:

(Hotspot+JRockit)-Zombie = Enterprise JDK with paywall

OpenJDK = Free JDK without the fun/fast/secure/... stuff


Anyone knows how this would affect JRuby?


It should at least run it, unless they break bytecode backwards-compatibility, which would be moronic.

However, this would open the door for them to do evil things like, for example, charging money for the JDK.


Or any of the other JVM-based languages such as Scala, Groovy, Clojure...?


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.


It will stop working. JRuby will not execute any more. It just throws an error.


Just a blah-blah-blah.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: