ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Wannheden" <>
Subject Re: Getting 1.6 out the door
Date Tue, 02 Sep 2003 07:23:59 GMT
> > > 3. <macrodef> and <presetdef>
> > >
> >   a) resolution of properties
> >      The issue here is that properties get resolved when the
> >      macro is used and not when the macro is defined.
> >      I think that it would be difficult to resolve the
> >      properties correctly when the macro is defined.
> >
> >      I think that the current implementation and behaviour is
> >      preferable.
> I think it's sad that you reflect on this from the implementation
> perspective rather than the user's one... One of the major 'feature'
> of Ant is that it is very explicit and relatively simple.
> It's not all about power, or one would use a real programming language
> like Perl or Python. <macrodef>, although powerful, complexifies the rules
> of Ant, namely the property expansion one, making it context dependent!
> Never underestimate the power and simplicity of context/scope free rules.
> Although Ant already has scopes with <ant>/<antcall>/<subant>, the
> expansion rules works the same everywhere, and I'd like this to stay the
> same.

Of course you always have to remember that this property expansion doesn't
work the same for targets.  Inside a target the properties aren't expanded
until the target is called.  This may seem obvious, but now that any task
can be at the top-level, a target doesn't feel that different from a task.
It's a task container and in a way not that different from <macrodef>.

Just my $0.02.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message