coolness

Tom Tromey tromey@cygnus.com
Wed Mar 3 20:40:00 GMT 1999


>>>>> "Thomas" == Thomas Reilly <treilly@livesoftware.com> writes:

Thomas> 1) AWT support: Any plans underway here?
It's not going to be in the first release.
Thomas> Classpath's java.awt is using a GTK+ peer system which would
Thomas> seem to be a nice option. What about other java.* goodies?
Thomas> Again Classpath seems like it could help.
We have java.lang, java.util, java.io, and parts of java.lang.reflect,
java.text and java.net. These should be in the first public release.
It would probably be possible to compile Classpath stuff with gcj and
link it into our runtime. However, I doubt the two projects will
merge. Cygnus needs to be able to release the library in a form
suitable for embedded customers (which the LGPL is not), and so needs
more license control.
Also, my understanding is that Classpath uses JNI for native methods.
This is much slower than our approach.
Thomas> 2) Does/will the runtime include a classloader so uncompiled
Thomas> classes can be used dynamically?
No -- the runtime doesn't include a VM.
In theory it should be possible to dynamically load compiled classes,
but we haven't written the runtime support for that. Right now
Runtime.load and Runtime.loadLibrary always throw an error.
This support would probably be pretty easy. libtool already has a
library that acts as a portability layer over dlopen().
Thomas> 4) I think GCJ is going to finally make Java ready for
Thomas> primetime and I'd like to help, what will Cygnus be doing to
Thomas> let guys like me help out? I'm thinking along the lines of
Thomas> the egcs project (CVS etc).
This will become clear with the initial release. There will
definitely be a way for non-Cygnoids to contribute. The current plan,
as I understand it, is to have some kind of cvs repository -- either
shared with egcs, or our own.
I'm hoping after the first public release the library development will
be more visible. E.g, hopefully the external cvs repository will
change on a near-daily basis, etc -- like egcs now.
Thomas> 5) Come to think of it will this be a separate project with
Thomas> its own release path or integrated with egcs (talking about
Thomas> the runtime and java library classes, obviously the compiler
Thomas> is integrated with egcs)?
We're trying to make this happen, but it is largely up to how the egcs
maintainers feel about it. Licensing plays a role here too. I don't
really know the current state of this discussion.
Thomas> 6) I hear the GC and threads are pluggable, any docs on the
Thomas> interface available?
The GC isn't pluggable yet. Well, it is and it isn't. You could
replace the Boehm GC with a different conservative GC if you wanted
(though it isn't clear what you'd gain). The current GC interface is
undocumented and incomplete. It will definitely be changing in the
future.
However, we do have a document on how to port the thread layer. We've
done two thread ports, both of which will be in the initial release
(except that the quick threads port won't include our hacked quick
threads library, so it will be useless except as a reference).
The POSIX threads port is about 500 LOC, and it includes a fair amount
of portability crap (e.g., work around systems without recursive
mutexes), so doing such a port is pretty easy.
The thread porting document doesn't describe how to teach the Boehm GC
about the new thread port. Right now the fact that you even have to
do this is only alluded to. This is probably the hardest part.
I'll try to get this document on the web sometime soon. Not sure how
soon I can do it; there's a lot going on. I could email you a copy if
getting html in email won't make you retch.
Tom


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /