Ant-Contrib Considered Evil (Build Doctor)

Our good friend the Build Doctor helpfully reminds us that Ant is and should be declarative. The ant-contrib project consists (mostly) of non-declarative extensions, like for and if. Would you put these in a regular expression (another common declarative language)? (If you answered “yes”, please stay far away from me.)

If you need non-declarative extensions you are probably writing a script without realising it, instead of declaring your dependencies and tasks to perform. So why not use one of the many nice scripting languages and call your script from Ant, or write your own Ant task? This and more inspired by the CITCON Paris session on better Ant builds.