Updated Microsoft has pulled a download that added Java language support to .NET. Microsoft silently made it available on Sunday, less than 48 hours after we first broke the news of the project.
A release note, curiously dated October 11 - this coming Thursday - describes it as a beta of "Visual JSharp .NET Version 7.0." From reports we received last week, it had the erstwhile codename "Java.NET".
The 7MB file wasn't listed on any of Microsoft's download pages.
But reviewers fast enough to hit the URL have delivered their first impressions. O'Reilly's Brian Jepson has a write-up with screenshots here, and Chris Maunder of The Code Project has an overview here. Maunder notes that J# support doesn't compile .class bytecode, or support Sun's RMI or JNI.
(Thanks to Brian and Simon Steele for the links).
"Microsoft Visual J# .NET is a development tool that developers who are familiar with the java-language syntax can use to build applications and services on the .NET Framework. It integrates the java-language
syntax into the Visual Studio .NET shell," according to the release note.
Microsoft stresses that J# won't create applications that run on Java Virtual Machines, but only on the .NET common language runtime, adding the following disclaimer:-
"Visual J# .NET has been independently developed by Microsoft. It is not endorsed or approved by Sun Microsystems, Inc."
Sun may well surmise that there are more elegant ways of blowing bubbles than by farting in the bathtub: we're not at all convinced that Microsoft's disclaimer will be enough to dissuade Sun from further legals.
By ducking VM support, Microsoft forgoes the requirement to submit to Sun's compatibility test suites, which it needs to pass to call its implementation Java™ -compatible.
Sun has tolerated Java clones, which avoid mention of the 'J' word, such as HP's Chai project. Microsoft too avoids the 'J' word, deploying instead new write once, run anywhere term, "java-language syntax" (note the attention to case, there) suggesting that Java is now so generic it doesn't need the approval of Sun. This tactic is entirely consistent with Redmond's browser-war era strategy of divorcing Java the language from Java the platform.
But it gives Sun the chance to respond with the jibe that Microsoft has two java-ish languages (J# and C#), neither of which is The Real Thing. Delphi lead Anders Heljsberg, hired from Borland to work on Visual J++, later co-authored the very Java-like C# language specification.
If that sounds confusing, we half suspect it's because it's supposed to be. ®