4 ms·
To validate our claims, we have completely re-implemented GHC’s build system, for the fifth and final time. Famous last words.
by gbacon 8y ago
To validate our claims, we have completely re-implemented GHC’s build system, for the fifth and final time.
Famous last words.
- sevensor 8y agoI chuckled -- given the authors, I think this was intentional irony.
- mannykannot 8y agoBuild, version control and package management: three problems perennially in search of a definitive solution. For those who are sure we already have a definitive solution to one or more of these, the problem is in persuading everyone else, especially those who think something else is it.
- hedora 8y agoHere are multiple examples of “definitive” build systems, by your definition. Many are over a decade old, and haven’t been standing still. These days, they generalize to many, many languages, and are working towards byte-for-byte reproducibility of the build artifacts: https://reproducible-builds.org/who/ https://reproducible-builds.org/who/
- jpfed 8y agoSo this is a dumb question, but isn't the question of reproducible builds made trivial by vendoring dependencies? Why is it treated like this holy grail when it should be dirt simple? I must be misunderstanding something.
- heavenlyhash 8y agoIt's not a dumb question, but unfortunately, we live in a dumb^H^H^H^H interesting world. Check out all the links under this heading: https://reproducible-builds.org/docs/#achieve-deterministic-builds https://reproducible-builds.org/docs/#achieve-deterministic-... Many legacy systems capture all sorts of nondeterministic values -- from build date (it might be a desire to be "helpful", but breaks reproducibility) to accidentally depending on the order of inodes on your files system! All of these problems are solvable. It should be dirt simple. It's just a "small matter of programming" :)