- The Java Virtual Machine (JVM). Advantages: Great tools, hosts many languages, lots of free software is available for it (databases, support for many file formats, etc.), support for modularity (OSGi, Jigsaw).
- The web browser. Advantages: Quickly trying out an application without downloading anything, URLs that encode application states and are bookmarkable, the ability to clone application states via tabs, integrated hypermedia.
Then how about combining
these two platforms? It seems like a missed opportunity for the JVM
uses the JVM. What would a JVM-based web browser look like? It would be
modular, every aspect of it would be extensible in Java. It would be
host to a new kind of web/desktop application hybrid. If the JWebPane
technique of porting Webkit to Java2D really works, then it can even
provide a perfect web experience.
I do realize that applets go a long way in the direction of this vision, but many minor details add up so that one still feels the barrier between Java and the browser. I could never get excited about JavaFX, it always felt like Java was trying to be like Flash. But the idea of a JVM-based web browser, HotJava 2 if you will, does excite me in ways I cannot all explain rationally. I can see myself extending such a browser with many tools and writing all my future applications based on it.
Update: See my comment below on a refinement of these ideas.