On Saturday, 11 June 2016 at 02:48:59 UTC, H. S. Teoh wrote:
Finally got around to looking at this (albeit just briefly). It
looks very nice! Perhaps I'll try using it for my next project.
If you do end up using it, I'd be happy to iron out any
irritations in Button that you encounter.
Button really needs a large project using it to help drive
I'm particularly pleased with the bipartite graph idea. It's a
very nice way of sanely capturing the idea of build commands
that generate multiple outputs. Also big plusses in my book
are implicit dependencies and use of inotify to eliminate the
infamous "thinking pause" that older build systems all suffer
from (this idea was also advanced by tup, but IMO Button looks
a tad more polished than tup in terms of overall design). Of
course, being written in D is a bonus in my book. :-D Though
realistically speaking it probably doesn't really matter to me
as an end user, other than just giving me warm fuzzies.
Tup has had a big influence on the design of Button (e.g., a
bipartite graph, deleting unused outputs, implicit dependencies,
using Lua, etc.). Overall, I'd say Button does the same or better
in every respect except maybe speed.
About it being written in D: If Rust had been mature enough when
I first started working on it, I might have used it instead. All
I knew is that I didn't want to go through the pain of writing it
in C/C++. :-)
Unfortunately I don't have the time right now to actually do
anything non-trivial with it... but I'll try to give feedback
when I do get around to it (and I definitely plan to)!
Thanks! I look forward to it!