ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Vogel <pvo...@arsin.com>
Subject RE: PATCH: Attributes of Target can reference properties
Date Tue, 03 Jul 2001 15:42:55 GMT
> From: Peter Donald [mailto:donaldp@apache.org]
> On Tue,  3 Jul 2001 18:13, Peter Vogel wrote:
> > Peter D -- I think you need to rethink your position.  
> While templating is
> > nice, and I amy even use it in the future, blocking 
> progress of base ant
> > in this manner will only lead to ant becoming a boat anchor 
> when people
> > stop being amazed by the javac task and start using it for building
> > real *systems*.
> 
> I assume you are trolling. The questions you ask have been 
> discussed in past. 
> Besides quite a few "real" systems are built today using ant. 

Sorry Peter D, it was late, and there are times your position just rubs
me the wrong way.  I'll try to be a little more civil in upcoming
responses...  But
I really think you missed my point.  I agree quite a few real things are
built
using ant, but it is more painful than it needs to be, and is contrary to 
the philosphy which you claim to support for ant.  Further, my emphasis was
on
the word *system* which implies a complex interaction of multiple
components, etc.
which may be separately managed but which, in the end, need to build under a

coherent controlled environment.  It is in these situations where ant's
limitations
start to chafe.

> 
> And just FYI it was Stefan who blocked this not me ;) I just 
> said I will -1 for Ant2.

Which, reasonably enough, led to Stefan not wanting to commit a feature 
in ant1 that would go away in ant2.

> 
> > From my POV, your templating concepts ADD complexity for very little
> > value...
> 
> Well for one it adds the ability of foreach/if/ etc that you 
> seem to want?

Yes, but with an extra layer of baggage that isn't necessary.  What I'm
saying
is that I don't understand your opposition to extending the base ant in ways
that *reduce* the complexity of ant.  I've posted before about foreach --
how
it would *reduce* the complexity of ant by eliminating a bunch of "task
clones"
whose only difference from their genetic donor is that they loop across a
fileset.
While filesets would be a common list to loop across, they are not the only
one, so
you strangle functionality *and* increase complexity by adding a bunch of
tasks
that are really just another task with fileset looping.  If is much the same
sort
of thing.  Instead of a nice clean:
   <target name="whatever">
	<if expr="! ${buildnum}">
            <!-- do what it takes to look up and update the buildnum -->
      </if>
      ...
   </target>

One has to do this monstrosity:
      <target name="getbuildnum" unless="buildnum">
           <!-- do what it takes to look up and update the buildnum -->
      </target>

      <target name="whatever" depends="buildnum">
          ...
      </target>

Adding a target that has to be explained to people for no reason other than
to work around the need for an if!

I already posted the mess that results from hacking around the lack of a
foreach.



> *-----------------------------------------------------*
> | "Faced with the choice between changing one's mind, |
> | and proving that there is no need to do so - almost |
> | everyone gets busy on the proof."                   |
> |              - John Kenneth Galbraith               |
> *-----------------------------------------------------*

I think you and I both ought to take the above to heart!  I've actually
spent quite a lot of time over the past two months working to instill the 
"ant way" into myself, and I'll admit my position has changed on a few
topics, but not the ones I'm most vocal about here, because there *isn't*
another way to do the things that need to be done that remains within the 
goals of ant.

-Peter

Mime
View raw message