Glean: C++ Code Indexing at Meta
summary
Glean is a Meta-built indexing platform that uses Clang ASTs, RocksDB and a small query language (Angle) to store deduplicated facts from huge C++ trees plus Buck2 and Thrift artifacts, collapsing thousands of header occurrences into single facts and powering go‑to‑definition, cross‑repo Thrift→C++ jumps and incremental rebuilds. It records macro spellings vs expansions and separate name locations, derives a language‑neutral code‑markup layer, and exposes queries as stored predicates so Angle schema + Thrift facts drive fast navigation and analytics.
AI-written summary · about
chapters (17)
- 0:00Introduction to Glean
- 6:49Architecture overview
- 11:00Schema design challenges
- 19:14Macro location types
- 22:19Introducing Angle
- 33:03Deriving code markup
- 40:59C++ macro navigation
- 47:14Demo of macro navigation
- 49:20Template instantiation indexing
- 51:30Handling local edits
- 54:44Adopting Glean in projects
- 57:11Incremental indexing
- 1:01:31Cross-repository navigation
- 1:06:10Future improvements
- 1:11:31Open sourcing LSP integration
- 1:19:40Supporting multiple languages
- 1:21:50Closing and Q&A
related talks
32mGlean: Data about Code
37mBeyond Grep: Semantic Code Search for Safer Change at Scale
10mRefactoring React code with Glean
04mGet Productive on Unfamiliar Source Code
59mMeta++: Language Support for Advanced Generative Programming
20mDevX: History of Code Search
36mCode as Data: How data insights on legacy codebases fill the knowledge gap in modernization projects
01h 08mKeynote: Reflection in C++26 - Welcome to v0.1 of the meta::[[verse]]!
