classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: getting started with classpath


From: nferrier
Subject: Re: getting started with classpath
Date: 25 Apr 2002 10:03:15 +0100

Phillip Morelock <address@hidden> writes:

> Hello I'm seeking "getting started" help. 
>  
> I have a gnawing interest in hacking on classpath, and I have read  
> a couple of times over the guide "hacking.html" that is linked from  
> the GNU site.  It's just, I'm having a simultaneous-learning-curve  
> experience, and I'm wondering if anyone on this list can push me  
> off in the right direction to eventually being able to contribute. 
>  
>  
> My "problems" or rather questions are as follows: 
> 1.  I only have experience using one JDK/JRE (Sun's), although I  
> have used it on many platforms.  I noticed a strong linkage between  
> Classpath and (of course) the free JVM / compiler implementations. 
> That's cool, I get it, I am just not sure which components each  
> of these tools replace, and what their level of compliance / implementation  
> is.  Is there maybe a best order to learn about these tools in?   
> I would like to know Free Java and work on it even, but am not sure  
> how to start. 

Classpath is the Java library of the GNU project. As such it is used
(pretty much off the shelf) with several VM implementations.

If you're just interested in helping with the librarys (maybe you have
a particular area of interest, such as the networking libs, or
graphics code) then get Classpath + ORP, install them and hack away.

Alternately, Classpath is the library which is used as the foundation
for the GCJ compiler. GCJ is an exciting idea but at the moment
requires uses it's own class library. We are in the process of moving
GCJ to the Classpath library but it's quite a complex process (because
GCJ uses it's own native code implementation).

You could help us in merging Classpath into GCJ, or just by working on
GCJ.

  
> 2.  How can I be certain I meet the "clean room" requirement?  I  
> have browsed through several of sun's classes several times in source  
> code form as included on my Mac OS X machine.  I know that I don't  
> remember any specifics, they were just instructive at the time.   
> Does this count? 

I'm affraid so. It's possible that you might be able to work on
classes that you haven't looked at but even that is sticky ground, if
you've looked at the code at all it's perhaps too risky to accept
your contributions.

The final decision would be for the Classpath maintainers.


If you still want to contribute to free Java and you decide that you
can't help with the core classes you could still help us with
extension classes (with stuff you haven't seen any one else's code).

Check out http://www.gnu.org/software/classpathx

Or maybe the Classpath tools project at savannah here:

   http://savannah.gnu.org/projects/cp-tools

Whatever, you should also check our general java page:

   http://www.gnu.org/software/java

because that gives you a kind of overview. 

Please feel free to make constructive comments about any or all of
these things.

 
> 3. If I write "pure java" implementations, do I need to worry much  
> about your notes on native code and VM integration?  I have not done  
> any JNI programming, but I am okay with learning.  I guess, a better  
> question is, what is the view of this project as far as native code, 
> VM integration, etc.?  I get the feeling by browsing the classes  
> that there isn't much native code in the non-GUI components. 

Native code is required where you can't implement something in Java or
it there is a massive benefit to doing it natively. There are many
core classes that don't need any native code (but many of the more
interesting ones do need native code, networking for example).

  
> Any "getting started" tips would be much appreciated -- it seems  
> like there's a lot to learn for someone coming from a pure Sun world  
> as far as the raw implementation goes. 

We do need more beginner doc. But we are still working hard on getting
stable, usable versions of GCJ, Classpath, etc... out there and
working.

One of the things you could help us with is documentation.


Nic Ferrier
ClasspathX Maintainer




reply via email to

[Prev in Thread] Current Thread [Next in Thread]