Skip to main content

Suggestion

Posted by editor on January 22, 2008 at 6:52 AM PST


If you want innovation, open things up

Here's a bit of compare and contrast for you, using today's front page. Start in the Java Today section, where we find that IcedTea contributor Gary Benson has been blogging about his efforts to develop a Hotspot implementation for Linux that requires no assembler code, potentially making it infinitely portable:

"Lately I've been experimenting with the idea of a generic Linux port of Hotspot. I updated the templater and generated a new set of stubs, fixed the build system to build them, then started filling them in. I got into interpreter code in a couple of days, which is where the fun starts."

Dalibor Topic, who originally pointed me to Gary's blog, clarifies what this effort involves: eliminating the CPU-specific assembly parts of the Hotspot code base. Since Gary had already been working on a PowerPC port of Hotspot, he was presumably already well aware of how much assembly is in Hotspot, and where.

Last Friday, Gary reported that Hello World was working, and just over an hour later, he got the zero-assembler javac to compile Hello World.

A lesson to take away from this: was anyone considering doing this before Java was open sourced? Discussing the project on the #javaposse IRC this morning, Dalibor pointed out that before OpenJDK, most companies would license the JDK and then only tweak it enough to run it on their own platform. Gary Benson's effort to "run anywhere" anywhere may have been technically possible before OpenJDK, but perhaps wasn't practical from a business standpoint, and apparently wasn't on anyone's radar.

Contrast that with a still very-closed Java API, the BD-J standard that provides the interactivity of the Blu-Ray Disc format. Last year at JavaOne, speakers on BD-J panels indicated that the Blu-Ray Disc Association hoped to make some sort of overture to the open-source and independent developer communities, but hadn't decided how or when to do so, and were keeping the standard close to their chest for now. In today's Forums, user billshepp indicates this is still the case:

Many of us agree, but for better or for worse some of the BDA Director companies take a far more cautious approach to the platform. We're working to find a good compromise that makes developer information accessible to those with a bona fide interest without lowering the bar so far that tire-kickers clog up the system...

That prompted a vociferous reply from Endre Stølsvik:

When did tire-kickers become a problem, I have to ask? Have anyone of
the BDA Director companies that have this opinion had a look at the open
source scene at all? Tire-kickers are often the ones that start new
stuff. If something starts, and it is good, others will chip in, and
soon enough you will have a really good thing going. Stupid stuff, or
really bad stuff, dies all by itself.

Even if Blu-Ray wins its standards war with HD-DVD, is BD-J "winning"? Is it living up to its potential, or will it continue to be used for marginally more interactive menus than DVD provides, and trivial games? Are there entirely new BD-J applications and markets that won't open up so long as the standard is locked down? Compare to what's happening a year after the opening of OpenJDK, and you have to wonder if, as Erndre says, the BDA even understands open source.


Meanwhile, in our Feature Article, Deepa Sobhana has an introduction to JMS Messaging Using GlassFish.
Messaging provides a way for different parts of an enterprise system to collaborate, without the tight coupling of approaches like RMI and CORBA. Java EE defines the Java Messaging Service (JMS) for creating loosely coupled enterprise systems, and in this article, Deepa shows off how to build a JMS-driven application atop GlassFish.


In Java Today, the free CommunityOne conference will be held again on May 5, 2008 (the day before JavaOne), and its Call for Participation is open through January 31. The initial topic list is: Free and Open, Projects and Strategy, Operating Systems, Web Servers and Databases, Scripting Languages: Content Authoring and RIAs, Tools and Integrated Development Environments, Next Generation Web Applications, and Web Scale Computing. New topics may also be proposed at the conference wiki.

The GlassFish webservices stack, Metro, has created a new Policy subproject. The project defines two goals: "In the short term, make href="https://jax-ws.dev.java.net/">JAX-WS WS-policy aware by moving
out the generic policy code from project href="https://wsit.dev.java.net/">Tango.
In the long term, provide a common, abstract policy API layer. The API
design should be independent of any particular policy expression
language. Instead it should be use case driven and ease-of-use
oriented."


In today's Forums,
ebresie wants to see phoneME on Palm, as explained in the thread
Re: JavaME for Palm.
"I've had no major problems with the IBM VM, my conceI think this is the same sort of scenario that OS X users are encountering, having to wait for Apple optimized versions which are always lagging behind. As Palm does not seem to be actively supporting Java, I was hoping a port could be integrated into the Java ME source tree and supported in the open community. If it's included, then we (Palm OS users) get all the added performance and feature updates that the reference implementation does."

vdjurovic could use some help with
running tests on device.
"Hi, I'm quite new to Java ME, so I hope this wouldn't be considered a dumb question. I searched all over, but can't find answer to this relatively simple question. I created a sample test suite, which I want to run on device in CLDC mode. But I can't find any instructions on how to do it. Can you please provide a link to some instructions, or post a step by step instructions how to do it?"


In today's Weblogs, James Gosling looks forward to this week's

Java Mobile & Embedded Developer Days.
"We're doing a special conference for mobile & embedded developers this coming week on Wednesday and Thursday at Sun's Santa Clara campus. The agenda is intensely technical."

Speaking of the MEDDs, Bruno Ghisi looks ahead to a Bluetooth session by interviewing its presenter, in the blog
JSR 82 brainstoming with Sean O'Sullivan.
"Do not miss the session "Past, Present and Future of JSR 82 (Java Bluetooth APIs)" at Mobile & Embedded Developer Days... a very nice preview here!"

Cay Horstmann offers a JSF case study in
Swing for the Web--Are We Getting Closer?
"When I first heard about JavaServer Faces, way back at the 2002 Java One conference, it was sold as "Swing for the Web". Many years later, the reality is far from perfect, but are we getting closer? I report how NetBeans, GlassFish, JSF, and JPA worked for me in a recent -h-a-c-k-, erm, agile development project."


Current and upcoming Java
Events
:

Registered users can submit event listings for the href="http://www.java.net/events">java.net Events Page using our href="http://today.java.net/cs/user/create/e">events submission form.
All submissions go through an editorial review before being posted to the
site.


Archives and Subscriptions: This blog is delivered weekdays as
the Java
Today RSS feed
. Also, once this page is no longer featured as the
front page of java.net it will be
archived along with other past issues in the href="http://today.java.net/today/archive/">java.net Archive.

If you want innovation, open things up

Comments

The zero-assembler port currently focuses on the interpreter, as there you can get by without writing assembler, and relying on gcc builtins for the fun low level stuff. An assembler-free jit would be quite a bit harder, I'd say, unless one just 'outsources' the jit engine to libjit, GNU lightning or LLVM (coincidentally, that's the plan for Kaffe ;).