Build systems a la carte: theory and practice
- Andrey Mokhov ,
- Neil Mitchell ,
- Simon Peyton Jones
Journal of Functional Programming | , Vol 30(E11)
https://doi.org/10.1017/S0956796820000088
Build systems are awesome, terrifying – and unloved. They are used by every developer around the world, but are rarely the object of study. In this paper we offer a systematic, and executable, framework for developing and comparing build systems, viewing them as related points in a landscape rather than as isolated phenomena. By teasing apart existing build systems, we can recombine their components, allowing us to prototype new build systems with desired properties.
This is a revised and expanded journal version of our ICFP’18 paper “Build systems a la carte” (opens in new tab), with more detail and a new section on our experience of turning theory into practice.
Executable code is available here (opens in new tab).