Joe writes: > In a front page article in Infoworld, it seems that HP is taking on Sun with > it's own Clean Room version of the Java Virtual Machine (JVM) dubbed > apparently, the HP JVM. (Article starts on Page 1, continues on Page 10) This is nowhere near as big a deal as you might think from the news stories of the last several days. The initial reports implied that HP was breaking away from the Sun standard just like Microsoft, which was going to fragment and eventually destroy Java. Of course the reality is that nothing could be further from the truth. As I see it (no insider knowledge on this one) HP (who is promoting Java in a BIG way, just like IBM and others) wants to embed a Java-compatible Virtual Machine into their future LaserJets and similar devices. Sun is already developing a Java VM for this type of application that they would very much like to license to HP (tiny license fee * a bazillion LaserJets). HP decided instead to develop their own Virtual Machine. This is probably because they feel that they can do a better job, in addition to the fact that they will not have to pay Sun's license fee (a bazillion *is* a big number after all). As far as I can tell, HP fully intends to conform to the Java standard, and has no intention of "corrupting" Java in any way. It's just a question of who is writing the code, and who is getting paid for it. It should look the same from the end user's point of view. What HP has announced is simply a Virtual Machine implementation, which is independent if the Java language, so there isn't much opportunity for them to "screw up" or "fragment" the Java world. HP is fully committed to Java compatibility, and has an extremely strong relationship with Sun's JavaSoft division (even if Scott M. is a bit pissed at them right at the moment, since he was already busy counting a bazillion chickens that hadn't quite hatched yet). HP will almost certainly continue to license Sun's code for Java on the 3000 and 9000, except where they think they can do a better job. Sun's code is a "reference implementation" after all, and it makes no sense to assume that people won't develop competing implementations. This doesn't mean that these implementations will be incompatible in some way. If you look inside the front cover of any of the JavaSoft books (such as the Language or VM specification books) you'll see that Sun grants everyone a license to implement these standards as long as they do it in a compatible manner and don't add extensions. It is under this license that I believe HP is producing their new "printer" VM, which pretty much legally requires that it be fully compatible with the Sun specification. Sun owns the "Java" trademark, and can probably prevent HP from using it with their VM implementation. We'll have to wait and see what they decide to do. It's probably in Sun's interest for it to be called Java if it is compatible, otherwise the naming variety used to skirt around Sun's trademarks will be extremely confusing to consumers, and prevent people from identifying truly compatible products versus incompatible ones. > This is rather interesting, if I may say so myself :) It's not that interesting from a technical point of view as it's not going to have any big effect on Java itself, but it is quite fascinating from a business/marketing point of view. Sun currently controls Java, but it's a question as to how long they can hold on to exclusive reign over it. More and more big companies (HP, IBM, etc.) are moving to Java in a big way and don't want Sun coming along and manipulating the standard to protect their own profits the way Microsoft does with everything. I've just recently switched opinions on the whole issue of Java standardization. I now feel that the sooner that the control of the "Java Standard" can be turned over to a standards organization the better. There are enough big players who want Java to move in the right direction that I don't think there is a big concern that someone like Microsoft will be able to corrupt and destroy Java through the standards process. > Any comment from CSY on this? Mike's at JavaOne this week, so you may not get his thoughts for a few days. His comment at IPROF is that this announcement has absolutely no effect on Java for the 3000. For more interesting news on what HP is planning for Java, see yesterday's press release at: http://www.hp.com/pressrel/mar98/23mar98f.htm One of the more interesting items is that HP will produce an optimized Java Virtual Machine for the IA-64 architecture, which should be available when the first systems ship. This is interesting because it may very well mean that Java will radically *outperform* ordinary C/C++ applications on this architecture for some period of time. The C/C++ code will require much more time to migrate and adapt to the CM vs. NM and Fat vs. Thin Binary type of issues that will almost certainly surround any such new architecture. If an "NM" IA-64 program can run 10x faster than a "CM" one, and the Java VM is a hand-optimized Native program, then things could be very interesting for Java developers! G.