Parsing is relatively separated from the rest. The real question is the execution model.
I see no problem with treating all top level elements as a 'default' target, with all other targets having an implicit dependency on it. That's actually the way it was implemented few years ago, before a vote decided to change it ( and forbid top level tasks ). There is no problem with ${} substitution either, as it is delayed to the execution stage. Regarding loops - it is possible to detect them ( just keep a static execution stack - that can also be used to report errors in a nice way ). For things like import we do need some extra API in Project and changes in ProjectHelper to expose a separate parsing step and treat the 'top-level' target the same as the other targets ( i.e. delayed evaluation ). That would actually simplify the code. Costin On Mon, 15 Jul 2002, Dominique Devienne wrote: > Yeah, exactly my thoughts too. <import> exists because Ant doesn't have real > templating. Would be better to completely separate parsing from execution, > as the Ant2 proposal allow, and enable using XLST-like feature within the > buildfile to construct the DOM, then hand everything over to the execution > engine... --DD > > -----Original Message----- > From: Jose Alberto Fernandez [mailto:[EMAIL PROTECTED] > Sent: Monday, July 15, 2002 10:43 AM > To: Ant Developers List > Subject: Re: Top level tasks > > --- Stefan Bodewig <[EMAIL PROTECTED]> wrote: > The > things that are still broken: > > > > Right now I'd say that ProjectHelper should stuff > > all top level tasks > > and data types into an anonymous target and hand > > that target of to > > Project. If project is asked to execute, then run > > this implicit > > target before calling anything else. > > > > Would this work or am I missing some (maybe obvious) > > problems? > > > > This means that things like <import> cannot use ${...} > on the names of the files to import. > Otherwise <import> would have to be a real task > with all the consequences that brings :-P > > Jose Alberto > > > __________________________________________________ > Do You Yahoo!? > Everything you'll ever need on one web page > from News and Sport to Email and Music Charts > http://uk.my.yahoo.com > > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>