To view parent comment, click here.
To read all comments associated with this story, please click here.
Javascript has no space in its name and it isn't a Sun thing and has no relation to Java except for four letters of the name. Netscape cooked up Javascript and we all wish to hell they'd picked any other name, like Wescript or whatever. What drove me up the wall was when folks generalized this confusion to decide that the J in AJAX stands for Java. But it's alphabet soup being slopped around, these things happen. Now "Java Desktop", if it really was first used by Sun, has now bled all over and there are many Java desktop systems and some of them are actually implemented in Java. But it is painful that Sun's JDS has virtually no Java apps, diluting and confusing the brand. Maybe it will be different some day. IMO we just need for the VM to become as reliable as an operating system as a first step. ( I should qualify that to say "reliable like Solaris or a good Linux distro, not reliable like Windows or the early dot releases of Mac OS X). Tremendous progress has been made in this area of Java VM stability and some process has happened with the system native library code too. But to go with the general assumption of distrust an OS adopts with respect to userspace and map that to the Java app/VM boundary is a tall order and requires a different mindset. The VM's basic assumption that it's working with JNI in a cooperative manner has got go go away. Performance would be traded for getting closer to bullet proof robustness. This would be in concert with a basic architectural change to virtualize the VM and give apps the illusion of each having their own logical VM. And the major goal would be to get to the point where one app's attempt to SIGSEGV itself into oblivion is just a blip to the VM and the rest of the runtimne environment: they scrap the offending app out of the runtime environment, reclaime the resources, and carry on. But this is all blue sky stuff wrt to main stream Java implementations. There's always hope, though. Its difficult to understand what's holding back the natural evolution of Java's implementation to reuse it's own infrastructure. Sharing the native code coming out of the VM's compilers is a harder proposition. Some have done this in some cases. But is'a killer to share native code when the compilers are so agile they optimize a bit of code here and a bit there. Transparent sharing of this code between apps is tricky.
But if and when "most is shared" you'll see some killer changes of perception, as firing off a new, moderate size application might take 50 milliseconds and 10s of kilobytes of memory. This kind of performance and economy has been demonstrated by Sun and IBM. But as with everything there are huge complications. Virtualizing native libraries so there is per-application state is horribly difficult to get right and keep right. But SAP has demonstrated this aspect too.
Maybe all the developments can converge to maka "Java on the desktop" a conmpletely different experience with very lightweight appps.
Or else, maybe Java is being asked to do too much. THe penalty for all these new dimensions of functionality is that they multiply complexity and test cases and certain kinds of detect can defy analysis and understanding. So establishing and maintaining bullet proof stability is very hard. But returning to the model of rock solid stability first, then building on that might allow true resource sharing. And of course theres's the basic contrast between the above "apps sharing a JVM but each running in a 'virtual JVM'" scenario from the two legacy cases of separate JVM processes per app or "all in one JVM with classloading hierarchies for the illusion of barries between applications (i.e. like Applets in a web browser).
Time will tell.
Netscape cooked up Javascript and we all wish to hell they'd picked any other name, like Wescript or whatever.
JavaScript had another name, it was called LiveScript when it was invented by Netscape. They renamed it to JavaScript in 1995 after Sun endorsed the language.
Edited 2006-03-10 10:36






Member since:
2006-01-03
I'm no java expert, but wouldn't it be nice if people could specify more precisely what they are talking about? The word "java" seams to stand for too many things: the language itself, (an implementation of) the virtual machine or JIT compiler, the bytecodes, various libraries etc etc
SUN is not helping either, with unlogical names (or trademarks) like "java script" or "java desktop".
I'm aware this is nothing new, but nevertheless its my take on the subject