on being selected as one of the finalists for the Software Carpentry
Project's design stage.
http://software-carpentry.codesourcery.com/first-round.html
I think that overall your design is excellent, but I have one
problem and a suggestion for your design.
1) Language dependency: I think you've missed a great opportunity by
not framing the syntax for your tool in a language neutral form
(e.g. XML). By actually building the tool around Python syntax
you've made the composition and exchange of the build files
actually dependent on Python when they need not be. I believe that
this will be a significant inhibitor in the adoption of "Tromey"
into integrated IDE's (for example). Just because the competition
(and presumably your prototype) asks for Python doesn't mean that
the language need be exposed.
2) Persistence. One of the great inefficiencies of make has always
been its need to reparse and recalculate all of its dependency
information on every new invokation when virtually all of it is
identical to previous passes. Given the modular nature of your
design, I believe that the addition of persistent caching of build
objects in a way that is modular and composable (a subdir changing
should not require recalculation of all module deps) would not be
difficult and would be a huge win.
That said, it seems that none of the entries were able to articulate a
credible path from make to SC-Build. If there would be a way to
(at least partially) transform an automake file to "Tromey" that would
be a huge leg-up. And I can't think of a better person to do it...
-------------------------------------------------------------------------------
Lee Iverson SRI International
[EMAIL PROTECTED] 333 Ravenswood Ave., Menlo Park CA 94025
http://www.ai.sri.com/~leei/ (650) 859-3307