An RMI Proposal

Aaron M. Renn arenn at
Fri Apr 23 16:40:52 PDT 1999

Hi. I notice that Kaffe does not have an implementation of the RMI
packages yet.  Nor do we on the GNU Classpath project.  Matt Welsh
at UCB wrote a package called NinjaRMI that provides RMI functionality.
This package is not compatibile with standard Java RMI at this time.
We asked Matt if he would be willing to update NinjaRMI to be fully
Sun compatible.  He said yes, though at this time he is too busy to
work on it.

Since both of us need RMI, I thought it would be good if we could
share the enhanced NinjaRMI package.  Copyright on that package is held
by UCB and it is licensed under a non-copyleft free license that does
not have an advertising clause and is compatible with the GPL and the
LGPL.  I propose that both Kaffe and Classpath contribute coding
effort as needed to make NinjaRMI useful, with all code donated back
to the NinjaRMI project, which would maintain its existing license.
We could then both use it without duplicating effort.

As I said, Matt is too busy to work on this now, but I thought we 
could agree in principle to cooperate on this now, so that neither of
us starts writing an RMI implementation from scratch.  (It could turn
out however, that it would be easier to start from scratch than to
adapt NinjaRMI).  If someone from Kaffe is interested in working on
it now, I can ask our project for volunteers and perhaps we could
proceed without Matt right now.  Let me know what you think.

You may be wondering about the Classpath assignment policy.  It is
true that we require all code that is part of Classpath to be assigned
to the Free Software Foundation.  However, NinjaRMI would not be
considered part of Classpath.  It would be a separate project which
we happen to distribute in order to get needed functionality.  In
a similar way we will distribute zlib, which is also not FSF

While I am writing, I would also like to ask about this mailing list.
I sent a subscribe message and received a confirmation, but I have
not been receiving email.  What could I have done wrong?

Also while I am writing I want to comment on a thread I saw in the
Kaffe archives from last February regarding using the GNU Classpath
libraries with Kaffe.  First, this is legal, and we have no objection
should you wish to try.  Second, it is probably not necessary.  Our
libraries are probably not at a state where they would provide any
advantage over your own.  I know that Godmar at one point did test
using the java.beans package from Classpath with Kaffe.  This sort
of limited thing might be useful in some cases.  I don't know.  If 
there are any good ideas in our code, feel free to use them.  Fourth,
we started our project before we were aware of Kaffe's own libraries.
Tim (to the best of my knowledge) never announced the Kaffe libraries
until the press release for Kaffe 1.0.  Had we known about them, it
is possible we would never have started our project.  However, we
did not know about them, and the existing free libraries (kream and
kore) were not considered a good starting point for our code.  By
the time Kaffe 1.0 was released, we had already invested a substantial
amount of effort into our code and decided it did not make sense
to abort the project.  Licensing under the LGPL rather than the GPL
was one reason for this decision, but it was not even close to 
being the main reason.  I don't consider the Kaffe use of the GPL
for its libraries to be a problem.  Fifth, we do not aim to become
the standard library for Kaffe.  Our documents mention a Kaffe port,
but these were written before the Kaffe libraries were released.  At
some point I am sure we will add Kaffe support - for hack value if
for no other reason - but it is not my goal to convince the Kaffe
project to abandon its own library in favor of ours.  We are 
concentrating on providing a library for Japhar, with a port to
the Electrical Fire JVM probably next up.  I hope this clears things

I hope that we can cooperate in the future to eliminate duplication
of effort.  Thus this message about NinjaRMI.  The Mauve project is
also an example.  I hope that other areas present themselves over

Aaron M. Renn (arenn at

More information about the kaffe mailing list