Java and Mac OS X - again...
In the past months, there have been several blog posts about the status of Java 6 on Mac OS X, mainly dealing with the complete lack of information about Apple's plans.
The worse scenarios have been fortunately dissipated when Apple published the titles of seminars of the latest WWDC: quoting from damnhandy's blog (more or less one month ago):
â€œNew features and performance enhancements make Java a greatly improved technology on Mac OS X Leopard. Discover how Leopard makes the Java development experience better than ever with resolution independence, a crisper Aqua look and feel, a 64-bit virtual machine, and more. Get the latest news on WebObjects and find out how other developers are using Java successfully on Mac OS X.â€
So it looks like we can assume we will have Java 6 released with Leopard (and not available with Tiger, as it happened when Java 5 was released for Tiger and not for Panther). Some questioned about the fact that Java 6 is not mentioned on Apple's website as much as Java 5 was; hence doubts as "will it be a first-class o.s. citizen" and such. This doesn't worry me: Apple is for sure more focused on making money on the iPhone, but as it releases something which is named "Java 6", it means that the thing passes the compatibility tests.
A subtler point is related to those 64 bits. Will Java 6 come with a 64-bit only JVM? damnhandy speculates:
"But based on the WWDC descriptions, it also seems pretty clear that Java 6 (or a 64-bit Java 5 version) will most likely not run on Mac OS X Tiger 10.4 as it wonâ€™t support these technologies."
that is maybe Java 6 will be 64-bits only. Unfortunately, there's this email from the java-dev mailing list at Apple:
-- There will not be a 64-bit PPC JVM.
Should we infer that there will be no support for G5 PPC machines? Yes, they are being phased out by Intel machines and Java 6 won't be popular before one year, but maybe in the meantime some developers might be serious troubled by this.
As usual, Apple gives no public information. My belly suggests that it's unlikely that Leopard comes with Java 5 and 6 for Intel Macs and only with Java 5 for PPC Macs, so I believe we will have both 32 and 64 bits JVMs. Nevertheless, I can't know for sure.
Quite certainly this topic has been discussed at WWDC seminars, but it's NDA-covered information, so people can't talk of it. Sure, you could pay $500, become an ADC Select member, get a Leopard preview and find out the damned thing yourself - but apart from the fact that those $500 aren't friendly to the opensource community, they wouldn't entitle you to disclose this information to your customers. E.g. if the no-Java-6-for-PPC inference was true, I couldn't advice a customer of mine about not using Java 6 for a new project (well, I believe in advicing and providing the rationale behind it). Would be saying "It's better you don't use it" while winking a violation of the NDA? Above all, would it be a SERIOUS thing?