Title
Non-recursive make considered harmful: build systems at scale.
Abstract
Most build systems start small and simple, but over time grow into hairy monsters that few dare to touch. As we demonstrate in this paper, there are a few issues that cause build systems major scalability challenges, and many pervasively used build systems (e.g. Make) do not scale well. This paper presents a solution to the challenges we identify. We use functional programming to design abstractions for build systems, and implement them on top of the Shake library, which allows us to describe build rules and dependencies. To substantiate our claims, we engineer a new build system for the Glasgow Haskell Compiler. The result is more scalable, faster, and spectacularly more maintainable than its Make-based predecessor.
Year
DOI
Venue
2016
10.1145/2976002.2976011
Haskell
Keywords
Field
DocType
build system,compilation,Haskell
Abstraction,Programming language,Functional programming,Software build,Computer science,Considered harmful,Compiler,Haskell,Recursion,Scalability
Conference
Volume
Issue
ISSN
51
12
0362-1340
Citations 
PageRank 
References 
3
0.43
7
Authors
4
Name
Order
Citations
PageRank
Andrey Mokhov113626.57
Neil Mitchell2312.59
Simon L. Peyton Jones35036381.19
Simon Marlow499655.48