In a presentation before US District Judge Ronald Whyte in San Jose, Microsoft maintained that it does not force Java developers who use Microsoft Visual J++ 6.0 to write Windows-only applications, even if cross-platform means sacrificing certain advantages, such as speed.
Whyte heard technology presentations from both Microsoft and Sun Microsystems in preparation for next week's hearing on whether Sun should be granted a temporary injunction against Windows 98 and Visual J++ 6.0. Microsoft demonstrated to the court that if developers disable the Microsoft extensions in Visual J++ before they start working, they can develop "pure Java" applets that run on platforms other than Windows. "Developers lives are full of trade-offs," said product manager Greg DiMichille. "Should I make it small or fast? There are differences among platforms -- in APIs, in features, in what hardware they run on -- and operating systems do compete on who has the best features. The Mac was successful because of PageMaker, and PageMaker was successful because Apple had rich APIs for graphics and printing."
Sun maintained that Microsoft deliberately added two new keywords to the Java language as well as compiler directives that tie Java applications to the Microsoft Virtual Machine for Java. In addition, Microsoft has refused to support Sun's Java Native Interface, which dictates how Java code interacts with native (C or C++) code. Microsoft has instead developed its own Raw Native Interface. The result is a Windows-only dialect of Java, Sun says.
Sun showed a video of developers who created a Java application using Visual J++, only to find that it was not cross-platform. Removing Microsoft's compiler directives after the application was created resulted in an application that wouldn't run anywhere. "If the programmer steers clear of the Microsoft dialect from day one, there are no problems but this is not the default mode of Visual J++," said Sun Vice President Bud Tribble in an interview. "This is exactly what happened to C and C++. Dialects developed -- for good reasons -- and Java is designed to address this Tower of Babel."
Prior to the hearing on Sept. 10, Sun and Microsoft will question witnesses before Whyte on Sept. 8 and 9. Sun is presenting Java creator James Gosling, JavaSoft President Alan Baratz, and Sun attorney Lee Patch, among others. Microsoft is presenting Senior Vice President Bob Muglia and others.