Hello Sean Luke!
I donít know yet whether you are interested to update ECJ with the 3 minor
changes that I mentioned before and listed below. You can put away point
4 (porting to Java Java 5) and consider only points 1, 2 and 3. These
changes are cosmetic and do not change anything to the way ECJ is
programmed. I would like to know if you are interested to do these
My interest (and that of several other members) to make these changes it
that your future releases of ECJ will have these changes permanently.
These changes donít have to be redone over and over again when you release
a new version.
Following these cosmetic changes, I want put together a group of
interested members to establish a list of other changes that might be done
on ECJ. Several people have shown interest in participating already. I
hope you can be part of this group. There are many ideas on this
subject. As a group we might decide to do the other deeper changes on a
private basis without affecting your version of ECJ. All these decision
will have to be done in the future. For the time being I would like to
concentrate of the first 3 changes listed below.
I am prepared to do the changes and return to you the change ECJ for your
review and approval.
1) Change ECJ library structure (like I explained before). This
change is cosmetic but it would make other java programmers feel more
familiar with the ECJ project. If you look at other open-source projects
on Jakarta or SourceForge, you will recognize a common directory
structure. This structure is described in an official Sun Java
documentation. ECJ would benefit to adopt this directory structure. For
the fun of it, I privately changed the ECJ directory to the standard one.
It took about 2 minutes to do and the benefits are substantial. The source
directories are less cluttered and more easily navigable. A final Jar
library is generated.
2) Use the ANT builder on ECJ. If you wish, you can distribute a
MAKE and an ANT builder. You will find that most Java programmers use
ANT. ANT is not more complicated than MAKE. I included an ANT file made
from your MAKE file. It works wonderfully. The ANT file is at the end of
this email. ANT is already deeply established in the Java programming
culture. Again, if you look at other projects including Jakarta,
SourceForge, Eclipse, you will see that they use ANT. ANT brings along
other benefits like testing, documentation generation, visual dependency
3) Use a format parser like Jalopy to bring all ECJ source code to
use the Sun Java formatting style. Currently ECJ uses an archaic C
formatting style. For people accustomed to reading Java code, ECJ looks a
little strange because of that. Sun suggests a formatting style for
Java. It is possible to use a formatter like Jalopy to format all source
code without affecting the language syntax. The operation last only a
few seconds and does not change the integrity of the source code.
***** THIS CHANGE IS MORE ADVANCED (MIGHT BE DONE PRIVATELY
4) Bring ECJ to the latest Java Compiler version (Java 1.5). The
justification for that is that ECJ needs to adopt the Java 1.5 features
(like typed containers, advanced JVM, ..etc) in order to be maintainable
for the future and to work properly with other Java libraries. For this
change, I will need your help because it is a delicate change.