Re: SableVM and Classpath

Etienne Gagnon <[email protected]> Mon, 06 Mar 2006 17:09:02 -0500
Newsgroups gmane.comp.java.vm.sablevm.general
Message-ID <[email protected]>
This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--===============0889299537==
Content-Type: multipart/signed; micalg=pgp-sha1;
	protocol="application/pgp-signature";
	boundary="------------enigEFF09B760D2E15215D79896E"

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enigEFF09B760D2E15215D79896E
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

Hi Philippe,

> To me this sounds like it really is only then a matter of
> manpower...since the past need not have a significant consequence on the
> future.

You are right; solving the class library thing is mostly a manpower matter.


> As SableVM moves from being about innovation to seriously being
> considered for an actual product (hint hint), I think it will increase
> productivity if you can resolve the final issues and do away with the
> SableVM-specific classpath.

There are actually two approaches that have been tried:

1- Getting the SableVM code (C only) to work with GNU Classpath without
any SableVM-specific Java code.  This was tried in the past, but the
reluctance of GNU Classpath people to see any SableVM-specific code in
their repository was a complete show-stopper.  It is not feasible (at
least, not in any reasonable way) to run a JVM without customized base
classes such as those in vm/reference in the GNU Classpath repository.

2- Reducing the set of modified classes, in SableVM, to only those in
vm/reference.  This is feasible, but I don't know if it is desirable, as
some of the choices of GNU Classpath in some base classes
(java.lang.Class, java.lang.Thread, etc.)  might not match well with how
SableVM does things.  SableVM is not alone in such a situation; even GCC
maintains it's own version of Classpath, as does Jikes RVM and others.
Now, we also tried this approach, but, GNU Classpath developers disagree
with some of our ideas and are not willing to provide "alternative"
implementations that could be selected at compile (or configure) time in
their repository; at least, not for SableVM.  It has been showed that
SableVM developers would have to argue for weeks on sone issues, just to
get a final "no", and then see, many month later GNU Classpath
developers finally come to the conclusion that the approach was actually
not so bad, and adopt it...  [I am just remembering the discussion about
native references...]


So, for a practical solution, SableVM has to maintain a set of classes
which are different from GNU Classpath.  So far, this set has not been
well defined, as we do have some bug fixes outside of key classes (e.g.
outside of vm/reference and the few key java.lang.* classes), and the
GNU Classpath project rejects bug fixes without copyright assignment.

Yet, maintaining a minimal set of classes is what we are targetting.
SableVM already sopports this using the java-sablevm -Xgnuclasspath
option. See:

 http://sablevm.org/wiki/GNUClasspath

> How much of an effort are we talking about?

Difficult to say, but, if you are ready to step-in and help, it will
take much less time. :-)))

Please note that I am pretty busy, I won't be able to write many such
long emails.  But, if you send short (and not too many of them)
questions to the list, the SableVM team (Greg, me, and others) will be
glad to help you joining the team and help. :-)

Etienne
-- 
Etienne M. Gagnon, Ph.D.                             [email protected]
President                                      http://www.sablevm.org/
J-Meg inc.                                     http://www.sablecc.org/

-- 
Etienne M. Gagnon, Ph.D.            http://www.info2.uqam.ca/~egagnon/
SableVM:                                       http://www.sablevm.org/
SableCC:                                       http://www.sablecc.org/

--------------enigEFF09B760D2E15215D79896E
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFEDLMEjyrJi4rH84gRAmx/AJsE68z9s+mr6RFuViqLXxFPNG03jACffhbF
i9qbmcGjeNZI62O5iZ0bmb8=
=+6nQ
-----END PGP SIGNATURE-----

--------------enigEFF09B760D2E15215D79896E--


--===============0889299537==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
SableVM-user mailing list
[email protected]
http://sablevm.org/lists/control/listinfo/sablevm-user

--===============0889299537==--