FWIW, I agree with Ian.  I believe that NAnt should be a declarative tool
and not permit procedural style code to be written at all.  If the extra
(complex) functionality is there then it will be used, and NAnt will get a
reputation for being unwieldy.

Just my opinion
Mark

> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Ian
> MacLean
> Sent: 28 August 2002 01:50
> To: Shaw, Gerry
> Cc: [EMAIL PROTECTED]
> Subject: Re: [nant-dev] Property names and functions
>
>
>
> >
> >I'm starting work on adding functions to nant and the syntax I was
> >thinking of using is this:
> >
> >
> >
> Are we sure we need this. No disrespect but couldn't we do a lot of
> whats in these functions using the script task ?. Its a slipperly slope
> to be taking - just look at how xslt has evolved from having a few
> functions thru script and now a full extension model. The real questions
> is "Do we want NAnt to become a programming language ? " and I'm not
> sure we do for a couple of reasons. 1) simplicity has been a stated goal
> of the project and adding a whole bunch of programming language
> constructs to a declarative build tool is certainly going to complicate
> things. 2) writing procedural code in xml isn't pretty. Just look at an
> xslt example
>     <xsl:choose>
>             <xsl:when test="$sortby='scientific_name'">
>                 <xsl:apply-templates select="//raptor">
>                 </xsl:apply-templates>
>             </xsl:when>
>             <xsl:when test="$sortby='status'">
>                 <xsl:apply-templates select="//raptor">
>                 </xsl:apply-templates>
>             </xsl:when>
>             <xsl:otherwise>
>                 <xsl:apply-templates select="//raptor">
>                 </xsl:apply-templates>
>             </xsl:otherwise>
>         </xsl:choose>
>
> compared to
>              switch(condition) {
>                     case "A":
>                        DoA();
>                        break;
>                     case "B":
>                         DoB();
>                        break;
>                     case "PerlManagedExeWiz":
>                         DoC();
>                         break;
>                 }
> in C#.  I like being able to do declarative stuff in NAnt and procedural
> programming in a fully fledged programming language. As soon as I start
> doing say string manipulation in xslt I get enormously frustrated and
> want to use a real programming language that has a proper string
> library. It looks like the initial functions you've proposed are quite
> similar to those in in xslt which leads me to think that doing
> programming in NAntScript would be just as frustrating.
>
> 3) the Ant team has had similar discussions and has always resisted
> going too far down this route - maybe Stefan can give us more reasons
> for why if he's reading.
>
> I'm not trying to be unduly negative I just thingk we should think very
> carefully before turning NAnt into a programming language.
>
> my 2c
>
> Ian
>



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers

Reply via email to