ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jose Alberto Fernandez <>
Subject RE: Tool Integration Problems
Date Sat, 09 Dec 2000 01:17:35 GMT
> From: Peter Donald []
> At 12:29  8/12/00 -0800, you wrote:
> >> From: Peter Donald []
> >> 
> >> 
> >> Thats why I like the idea of a DOM-like structure. This 
> >> DOM-like structure
> >> can be read (and possibly writeable in special cases). 
> This DOM-like
> >> structure is then interpreted into a task object that is then 
> >> executed.
> >> 
> >
> >I am really quite anti-DOM for ANT core. DOM is really a dog 
> and a memory 
> >hug which I do not need from ANT in the command line.
> >I do not know why should I pay for something I do not need.
> >For GUIs and editors, I have no problem and as I said over and over
> >the point here is that is the GUI work to do the maping (DOM->SAX)
> >for example, like is the CLI tool to the the mapping (XML->SAX)
> >and is the Core task to map (SAX->Project).
> Have a look at Configuration object from Avalon - you will 
> find it is as
> efficient as it gets to hold said information. It is more 
> efficent that
> other proposed methods of holding data.
> >So what happen when tool 75 wants to use some other representation
> >that is not DOM-like? Do we need to go and change ANT to support this
> >other thing? How many memory representation do we want to 
> keep in memory?
> Well they just adapt the builder and change it from returing
> DefaultConfiguration to MyFancySmancyConfiguration...
> >Today ANT has only one representation in memory (i.e., Project).
> >The XML and SAX representation as just streamed and are never fully
> >materialized in memory. Any DOM-like representation away from Project
> >would mean that now there are two of them around for the long run.
> Project isn't represented  in a dom-like way as there is no 
> need - it was
> the tasks in particular that are represented by Configuration object
> because they need to be.
> >Core should not need that. If the GUI or some other tool needs it, 
> >it is up to that tool to pay for it.
> Well if you can give a good method of full dynamic ability without a
> dom-like representation I am all ears ...

My point is, who needs this full dynamic configuration? Does ANT needs
it for doing its job. Do the task implementation use it?
If the answer is that it will be used only when some external (e.g., GUI)
entity manipulates the representation, then I think we are bloating
te core.

The way I see it, ANTs core should just create a snapshot of the project
from some external representation and execute the task indicated.
The next time you manipulate wichever external representaton you have,
ANT will just get a new snapshot and act on it.

I do not think we want ANT to be able to execute while in parallel we
change the definition of what it needs to do. If you agree, then the 
question is why should the core support such dynamic configurability.

Jose Alberto

View raw message