19 Mar 2004

GNU Classpath

Been very happy with the latest release. Many additions (java.util.regexp/gnu.regexp, java.net.URI, javax.swing.undo, java.awt.geom.CubicCurve2D/QuadCurve2D cubic and quadratic equation solving, javax.print.attribute.standard), i/o speed improvements (BufferedReader and ObjectInputStream). Lots of java.awt and gtk+ peer improvements. Start of embedded window support (browsers). Some Swing work. And the normal list of enhancements and bug fixes.

Also wrote a GNU Classpath 0.08 – How to use it overview. Hopefully it explains the interaction between GNU Classpath, gcj, kaffe, compilers, editors, runtime environments, extension libraries and other building blocks. It should get people quickly and easily up to speed with GNU Classpath hacking.

Patrik Reali made a nice FOSDEM’04 page which describes the last GNU Classpath hacker meeting. It includes reports and presentations given at FOSDEM on the current status and future plans.

Lost in translation

Put Japan on the list of places to visit. The loneliness of people in a foreign country was nicely captured. But the interaction between the two main characters didn’t really move me.

17 Mar 2004

Do we need to make a choice?

hp wrote an article on
Java, Mono, or C++? which he hopes will be the start of a discussion about high-level language technologies and how they can influence the development of the creation of applications for the free desktops. I am happy because he seems to know what he is talking about (although he seems to ignore KDE, Kaffe OpenVM, GNUstep and Objective C which share some of the goals he is talking about). But GNU Classpath is mentioned a couple of times. The most interesting thing to me was a reference to an old proposal for a shared runtime. I wonder how the new GNU gcj ABI/Pluggable JIT design will fit into something like that.

15 Feb 2004

Free JOnAS and Cajo! RMI expert needed

Andrew Haley started a discussion on what was needed to free JOnAS. And I looked in what was missing/broken in GNU Classpath to free Cajo. Looks like we have most things already, but we will need some RMI fixes and extensions. So if you are a RMI expert, please read the thread and volunteer to help on the list. Thanks!

If you just want to find out what the heck this JOnAS is then come to FOSDEM next weekend where Florent Benoit will give a presentation.

14 Feb 2004

Free AWT and Free Swing

Seems Free Swing was just the start. Graydon Hoare, Olga Rodimina, Kim Ho, Andrew Overholt, David Jee, Thomas Fitzsimmons and Fernando Nasser decided they could do much more and much faster. So they created a branch for libgcj to really concentrate on hacking Free AWT and Swing stuff. They already have JButton, JSlider and nearly JList working.
Graydon his 2D AWT stuff looks beautiful. Combine this all with the javax.swing.border and javax.swing.undo frameworks that Sascha Brawer just completed (including a huge testsuite!) and we are really cooking. Awesome!

13 Feb 2004

FOSDEM

FOSDEM here we come! The organization has provider a killer schedule! And we have added some nice presentations for our developer room.

If you are a GNU Classpath, kaffe, gcj, sablevm, ikvm, jaos, wonka, java-gnome, or free java packager and like to see a strong support for free software written in the java programming language. Please join the group.

In other news. Look at the start of Free Swing!

28 Nov 2003

robilad is my hero for the day. When someone complained that the Mauve tests are probably wrong (or not useful) because they point out bugs in the proprietary core library implementation from Sun he described our feelings and hope about creating a truely free platform as follows:

That depends on the situation. If the behaviour is clearly a bug, like in the above case, I’d say report it to Sun, make sure Classpath does it better, and have a mauve test to expose the bug in the JDK. After all, the goal shouldn’t be to just have the classes, it should be to have the superior implementation. Having a test suite of our own helps in showing that everyone’s implementations are buggy, but at least you can fix the free ones and share the fixes ;)

[…]

In the long run, the JDK is as irrelevant as an industry standard as SCO Unix is now. Ten years ago, there were many (closed source) implementations of Unix-ish OSes. GNU/Linux is gradually replacing them.

I boldly predict that the same will happen with Java. True WORA for Java will arrive, but it will arrive through free software efforts like mauve & GNU Classpath [2] that will provide the next reference platform.

[2] And kaffe, gcj, sablevm, kissme, etc. of course ;)

Thanks Dalibor, I needed that!

10 Nov 2003

Gnome meets java, java meets GNU gcj, gcj meets Eclipse

I love it when a plan comes together.

03 Oct 2003

Vacation and GNU Classpath developer workshop

Vacation in Germany. Lots of walking and ending in Saarbruecken at the Linux Kongress where we will have a real GNU Classpath Developer Workshop organized by Sascha Brawer.
Thanks to the Linux Kongress people for providing the facilities and making attendence to our BoF free (as in beer). But of course you should also attend the rest of the program if at all possible.

09 Jul 2003

Free Software Conferences

Going to the Libre Software Meeting on Friday and LinuxTag on Saterday and Sunday. Finally I will meet some of the GNU Classpath and Kaffe OpenVM hackers in person. Fun, fun, fun!

08 Jul 2003

Benchmarking free VMs

Did some benchmarks to compare the free java like environments out there. GNU gcj is just very fast. Without even trying to use any optimization flags (just -O2) it out performs all others by a very large margin. Since it is based on the GCC: GNU Compiler Collection it is also available on a lot of platform which is very nice (although I tested only on my x86 platform).

Interesting was that IKVM.NET a free VM based on GNU Classpath and Mono was almost as fast as Kaffe OpenVM. But although they show comparable benchmark scores IKVM takes a lot more time to startup and prepare the classes compared to Kaffe. The difference was sometimes measurable in seconds! So it seems that although Mono has a good JIT it (in combination with IKVM) takes alot of time to prepare/load the code before it starts really running it.

I doubt a JIT can be made as fast and be available on so much different platforms as a Ahead of Time Compiler like gcj. So I hope that people will look more into combining byte code interpreters and just in time compilers with ahead of time compilers based on gcc. As the benchmarks show gij (the GNU Interpreter for Java which comes with gcj) is not a very fast interpreter. But when running real applications it is often amazingly efficient because it uses the gcj precompiled core classes so that any use of a library function is blindingly fast. And real applications use alot of standard library calls. Especially when the standard library is as diverse as the one that comes with gcj (libgcj which is based on Classpath and modeled after the standard java classes).

And after posting my own benchmark lots of people published other benchmarks. All linked from the Free VM Benchmarks page.