ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vitaly Stulsky" <>
Subject Re: How to participate?
Date Mon, 17 Apr 2000 07:59:34 GMT

----- Original Message -----
From: "Robin Green" <>
To: <>
Sent: Saturday, April 15, 2000 4:28 PM
Subject: Re: How to participate?

> "Vitaly Stulsky" <> wrote:
> >From my side I want to ask one question: Is there any code standarts for
> >this project?
> I can answer this one: Yes.
> >I think it is possible to extend ANT to perform the dependence tracking
> >like
> >JIKES do.
> The easy part would be parsing the code (perhaps using an open source
> like ANTLR's Java one - no need to reinvent the wheel!). The part
> a bit more thought would be to optimise the dependency tracking process -
> make reading back and regenerating the dependencies as fast as possible,
> bearing in mind that this task will (in my estimation, based on experience
> with javac -verbose) be filesystem-bound (held back by the speed of the
> filesystem rather than the processor). So you need to minimise filesystem
> read/writes. Unless we want to go down the road of "no permanent Ant
> files should be created". -1 for that.

Is it principal position to avoid working files? They could sidnificiantly
overall speed. Jikes and JBuilder uses such files for dependency tracking.

> Of course, almost any kind of dependency tracking, however inefficient, is
> probably quicker than "build clean; build all" for non-trivial projects,
> why not get it right the first time?
> Someone previously suggested dependency checking based on .class files
> rather than .java files. True, there is already a lot of code available
> parsing .class files:

I found the similar library on:
May be it will be interesting for you.

> However, I am not sure but I think there are one or two ways that this
> theoretically slip up. If you use an optimising compiler on this, which is
> basically acting like an IFDEF in C:
> if (Constants.DEBUG) { logger.println ("working okay"); }
> and Constants.DEBUG happens to be false, the optimising compiler may  (I
> think even javac does this normally) just not compile the whole line, and
> may not even put a reference in to the Constants class in the .class file
> header. Even worse, anything inside that block may not be referenced. But
> this is just speculation.

View raw message