What is ant doing?  It's orchestrating your build.  Only the most simple
build ends up being purely declarative.  If this is the case, then ant is
fine I supposed.  Orchestrating your build usually means having some
complexity - loops/conditionals/true variables/complex constructs (classes)
may be needed.

Specifically regarding writing ant tasks for all your complex pieces would
result in an awful lot of specialized ant tasks + you need another build to
build the ant tasks. Scripting is just lighter-weight and easier.  Are you
really going to write a specialized ant task just for iterating over a bunch
of other ant tasks?  Are you really going to write a specialized ant task
for conditionals every time?  People don't do this, they use ant contrib's
conditionals and loops or the macro task.  This leads to the hell I've
mentioned.  Anyone have a link to a hellish build.xml for example?  I can't
use any from my current job as they aren't allowed to be distributed.

And then try debugging ant xml/ant task mix.  Are you really going to set
breakpoints on your xml lines and then step into your java code?  It might
be possible to do all this stuff in some convoluted manner.  But in my
opinion, it's just not the best solution.  What I think we really want is a
mix of declarative constructs and imperative constructs.  And that's exactly
what buildr/gradle give you.  And yes, you can set breakpoints and truly
debug them.   You can write classes for modularity.  They act (mostly)
interpreted, just like ant so you can tweak and execute w/o an intermediate
build step/separate build process.

I would guess currently (the article was from 2003), Dunan would advocate
Ruby / Buildr / Rake, as he abandoned Java long ago for Ruby (that and to be
a professional photographer).

On Wed, Mar 9, 2011 at 9:02 AM, Alexey Zinger <[email protected]> wrote:

> In the article, Duncan refers to Jonathan Simon's push to 
> Jython<http://today.java.net/pub/a/today/2003/06/10/jython.html>as a 
> programming replacement for XML.  As I read over Simon's points in
> favor of Jython, it occurred to me that he was advocating methods to relieve
> problems seen in XML-based programming languages that operate in the JVM.
> Problems like excessive verbosity, awkward syntax constructs, shortcomings
> of expressiveness that cause Java or other languages to bleed into XML, lack
> of scoping definitions.  He's making the same points that were touched on in
> this thread earlier, but he's also elevating Jython as a solution to all XML
> problems for no particular reason.
>
> In the JellySwing example, he correctly states all the problems that arise
> when you try to use XML for a complex Java UI, but he skips over the fact
> that Java itself has declarative syntax capabilities and instead proceeds to
> Jython.  In fact, his Jython version of the code is not too dissimilar from
> what it would look like in standard Java even without the declarative style.
>
> When he talks about Ant, he immediately looks at the direction the
> community has taken in making Ant a full-bore programming language through
> general purpose, but awkward scripting language extensions.  Agreed: bad
> idea.  But here again, he doesn't address why mixing specialized plugins
> written in a different language (which, thanks to all the latest langauges
> on the JVM can be written in whatever is "right" for the job) would be worse
> than throwing XML out altogether and switching everything over to Jython.
> Why not Java, or Scala, or JRuby, or god knows what else?  There doesn't
> seem to be a coherent argument made in favor of the proposed solution.  And
> the question of why Ant is so bad as an extensible glue language that
> plays well with underlying OS environments as well as the JVM world remains
> untouched.
>
> Alexey
>
>
> ------------------------------
> *From:* phil swenson <[email protected]>
> *To:* Ricky Clarkson <[email protected]>
> *Cc:* [email protected]; Reinier Zwitserloot <[email protected]>;
> Cédric Beust ♔ <[email protected]>; Moandji Ezana <[email protected]>
> *Sent:* Wed, March 9, 2011 10:22:26 AM
> *Subject:* Re: [The Java Posse] Is learning languages overrated?
>
> This mostly covers it.
>
> http://weblogs.java.net/blog/duncan/archive/2003/06/ant_dotnext.html
>
> 2011/3/9 Ricky Clarkson <[email protected]>
>
>> Even the guy who created ant (James Duncan Davidson) now thinks XML was a
>>> bad idea.
>>
>>
>> Do you have a reference for that?  I used to have one but it disappeared.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "The Java Posse" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/javaposse?hl=en.
>
>  --
> You received this message because you are subscribed to the Google Groups
> "The Java Posse" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/javaposse?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to