Good videos, with context.
2016 LLVM Developers’ Meeting: D. Dunbar “A New Architecture for Building Software”

2016 LLVM Developers’ Meeting: D. Dunbar “A New Architecture for Building Software”

LLVM
1 HN recommenders · discussed 2017–2020
Open YouTube ↗

About this video

Daniel Dunbar of Apple presents llbuild, a framework for building build systems, at the 2016 LLVM Developers' Meeting. He argues that the traditional way C compilers integrate with build systems limits compile speed, and proposes a new architecture.

Why it appears in the archive

Cited in build-system and C++ compile-time threads as Apple's work on incremental builds and the design behind llbuild.

AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.

From the Hacker News discussion

Someone · 2017-11 · rec

[LINK] may be too low-level for what you envision, but captures a lot of your ideas, I think. [LINK] has a presentation. It focuses on compiling with clang, but the system is more flexible. Slides at [LINK] , matching video is at [VIDEO] .

Read original comment ↗
pjmlp · 2017-01 · reference

If you are on Windows, VS 2015 and the upcoming VS 2016 have lots of improvements regarding compile times. [LINK] [LINK] [LINK] Apple is also doing a similar work regarding incremental C and C++ builds, based on the work they did for Swift [VIDEO] C++ builds can be made bearable if you don't go crazy with template meta-programming, do forward declarations, only expose actually public data on the headers, instantiate most use templates. But specially do use binary libraries, even across application modules. Don't spend endless time recompiling code that doesn't change.

Read original comment ↗
chubot · 2020-09 · reference

Is this like llbuild? [VIDEO] [LINK] I remember watching the talk awhile ago, but haven't kept up with its progress. It's about using LLVM as a library to eliminate duplicate work, as far as I remember. I think it was for C++ as well as Swift.

Read original comment ↗