Re: SableVM and Classpath

"Grzegorz B. Prokopski" <[email protected]> Sat, 24 Dec 2005 04:44:21 -0500
Newsgroups gmane.comp.java.vm.sablevm.general
Organization SableVM Project http://sablevm.org
Message-ID <20051224094418.GC989@gadek>
Hi Philippe,

+++ Philippe Laporte [08/12/05 15:53 +0100]:
> Hi,
>    Why is it that SableVM redistributes Classpath? What 
> SableVM-specific tweaks are required into Classpath? Or what's the story?

There's a few reasons.

Historically, especially when SableVM was being built by Etienne Classpath
was changing just too rapidly for a single person to both keep up with it and
still develop a whole JVM.  Writing a JVM, especially one with so many
fine-tuned and deeply rethought state-of-the-art features as SableVM is hard
work and requires incredible focus and big amount of time.  So it was a must
at that moment to just freeze SableVM's class libraries and first develop
a working version of SableVM with them.  SableVM 1.0.0 shipped with an almost
2 years old Classpath IIRC.

Secondly, especially at the beginning, the VM interface in GNU Classpath was
far from being stable (it's *much* better now), and so to make SableVM work
with it quite some changes must have been done.  A still noticable trend is
that in SableVM's Classpath we tend to do more on "java side", even if it's
sometimes slightly slower than a native implementation would be.  But it's
easier to maintain.

Thirdly, it's not something I like to get back to, but we didn't always
agree with Classpath developers over some issues.  It was often taking a lot
of time and effort (on both sides - SableVM Project and GNU Classpath
Project) to get to a satysfying solution.  At some point it was just too
much for a project like ours where the main focus is on the JVM.

Finally, because SableVM is about innovation, having our own copy of class
libraries allows us to easily and quickly make any changes we find necessary.

HTH,

		Grzegorz B. Prokopski

PS: Also note that in our new "All-in-one" distribution model, which
SableVM SDK is, a slightly modified copy of class libraries is one of
the many packages that are distributed together to create a coherent and
functional Java development and runtime environment.

-- 
Grzegorz B. Prokopski      <[email protected]>
Debian GNU/Linux           http://www.debian.org
SableVM - LGPL'ed Java VM  http://sablevm.org
Why SableVM ?!?            http://sablevm.org/wiki/Features