why are there so many build systems? it's understandable why programmers have opinions about aesthetics regarding their IDE, language, or framework of choice, but what is there to be opinionated about with a build system?
Buck: A high-performance build tool
11–20 of 71 posts
Re: Buck: A high-performance build tool
#12why are there so many build systems? it's understandable why programmers have opinions about aesthetics regarding their IDE, language, or framework of choice, but what is there to be opinionated about with a build system?
Re: Buck: A high-performance build tool
#13why are there so many build systems? it's understandable why programmers have opinions about aesthetics regarding their IDE, language, or framework of choice, but what is there to be opinionated about with a build system?
Perhaps because the incumbent/popular build systems are far from being the best solution for the job, particularly when compared with build systems available for other technologies.
For instance, in C and C++ land the incumbents are still hand-written Makefiles, autotools, or cmake, which leave much to be desired.
Re: Buck: A high-performance build tool
#14At least one of these new-fangled tools gets at least one part right. The salient point is now of course whether Buck considers the correct set of dependencies as well as negative dependencies.
Re: Buck: A high-performance build tool
#15why are there so many build systems? it's understandable why programmers have opinions about aesthetics regarding their IDE, language, or framework of choice, but what is there to be opinionated about with a build system?
It's a hard thing to do right despite looking deceptively simple.
Re: Buck: A high-performance build tool
#16Currently we marketing it for C++ but it can be used for any language that is supported by Buck.
Re: Buck: A high-performance build tool
#17Can anyone who's used both compare Buck to Blaze/Bazel?
However there are still some differences: Buck is much more opinionated than Bazel. Buck models slightly better C++ projects[1] and currently it's remote cache is more efficient[2].
Bazel is more extensible and offers also remote execution. Bazel has a bigger community and it's roadmap is public.
There has been more than 350 C++ [4] libraries been ported to Buck for the Buckaroo Package Manager[3].
There are also technical details that manifest in some odd ways but are not significant. There is a nice paper by Simon Peyton Jones (creator of haskell) and others that goes into the design details [5]
[1] https://github.com/bazelbuild/bazel/issues/7568
[2] https://github.com/bazelbuild/bazel/issues/7664
[3] https://github.com/LoopPerfect/buckaroo
[4] https://github.com/buckaroo-pm
[5] https://www.microsoft.com/en-us/research/uploads/prod/2018/0...
Happy to go more into detail if desired
Re: Buck: A high-performance build tool
#18why are there so many build systems? it's understandable why programmers have opinions about aesthetics regarding their IDE, language, or framework of choice, but what is there to be opinionated about with a build system?
https://xkcd.com/927/
Re: Buck: A high-performance build tool
#19Re: Buck: A high-performance build tool
#20Edit: nevermind, saw facebook and build tool and assumed it was site assets. Note to self, read whole articles before commenting.