Recent top five:
Java.next -- Four languages that represent the future of Java
Blogger Stuart Halloway has begun a series of posts on trends that point to the future of the Java platform. In his first
post, he compares Clojure, Groovy, JRuby, and Scala -- four wildly different languages that nonetheless all play together
in the JRE. Find out what unites these languages and what they can tell us about the future of Java-based development ...
| Enterprise AJAX - Transcend the Hype |
| Memory Analysis in Eclipse |
| Oracle Compatibility Developer's Guide |
| Memory Analysis in Eclipse |
September 9, 1998 -- Sun and Microsoft appeared in U.S. District Court in San Jose, CA in this week to present evidence and testimony supporting each of their arguments in the Sun vs. Microsoft case, which centers around Microsoft's implementation of Java technology. By everyone's reckoning, this is an important case, one which will have far-reaching effects on Sun and Microsoft as well as their partners, ISVs, and even end users. Please refer to the Resources for more information on the case.
For all the rhetoric, at its core this is a potentially straightforward contract law case. It has been complicated for the court, however, by the technical nature of the material in the contracts.
It isn't often that Perry Mason meets Java virtual machines and native method interfaces, but that's exactly what transpired at this week's hearings. James Gosling, the acknowledged creator of Java, spent more than two hours on the witness stand on September 9, giving an in-depth Java tutorial and explaining the technical issues critical to Sun's case.
Sun Microsystems's legal basis for its case against Microsoft revolves around a few key points. They are:
In order to lay the foundation for Sun's arguments, Sun's lawyers spent a great deal of time questioning Gosling on the technical details of Java, Java runtimes, and native method interfaces that allow Java applications to be cross-platform portable. What follows is a description of the technical material covered in Gosling's testimony, and of Microsoft's response. (You can review a written declaration from Gosling on the subject via the URLs in the resources at the end of this article.)
Gosling spent some time explaining that the entire design of Java centers fundamentally around portability. This is true even with the native method interface, the Java Native Interface (JNI) beginning with Java 1.1 and beyond. (Interestingly, Gosling admitted that the Java 1.0 Native Method Interface (NMI) was really just a quick fix to help make Java available as soon as possible. Though the developers in the crowd already knew this, Microsoft's lawyers harped on this point later in trying to show that even Sun's own implementations of the JDK 1.0 and 1.1 were incompatible at the native code level because of Sun's changes to the interface.)