Glean: C++ Code Indexing at Meta - Michael Park - C++Now 2024

https://www.cppnow.org --- Glean: C++ Code Indexing at Meta - Michael Park - C++Now 2024 --- Code indexing is an important technology the powers many essential developer tools. Code navigation in IDEs, to symbol search, to semantic analysis tools such as dead code elimination, etc. Glean is a system built at Meta to accurately index multiple languages of very large codebases. This includes the very large C++ codebase at Meta, but also the build system (Buck2) definitions, and the RPC protocol (Thrift) definitions which we can tie together to get an understanding of the full codebase. This talk will focus on the the intricacies of indexing C++ itself, such as collecting accurate information of macro definitions and their usage. --- Slides: https://github.com/boostcon/cppnow_pr... --- Michael Park Michael is a Software Engineer at Meta, working on developer productivity efforts. He has been working on a C++ code indexer for Glean, a system for collecting, deriving and querying facts about source code. --- C++Now 2025 - 28th April - 2nd May C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world. Annual CppNow Conference - https://www.cppnow.org   / cppnow     / cppnow     / cppnow     / cppnow   https://mastodon.social/@cppnow think-cell develops one of the world’s leading PowerPoint applications, with C++ at the core of everything we build, from layout algorithms to deep integration with Microsoft Office. Interested in working on challenging C++ problems with real-world impact? Explore our open roles: https://www.think-cell.com/en/career/... --- Videos Filmed & Edited By Bash Films: https://bashfilms.com/ YouTube Channel Managed & Optimized By Digital Medium Ltd: https://events.digital-medium.co.uk --- #boost #cpp #softwareengineering #meta #cppprogramming

Closing Keynote: C++ Development Tools: Past, Present and Future - Marshall Clow - C++Now 2024
▶︎

Closing Keynote: C++ Development Tools: Past, Present and Future - Marshall Clow - C++Now 2024

Security in C++ - Hardening Techniques From the Trenches - Louis Dionne - C++Now 2024
▶︎

Security in C++ - Hardening Techniques From the Trenches - Louis Dionne - C++Now 2024

IBM BOB vs VS Code - Which AI IDE is best for IBM i programmers?
▶︎

IBM BOB vs VS Code - Which AI IDE is best for IBM i programmers?

Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains
▶︎

Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains

“The Coding Machine” at Meta – with Michael Novati
▶︎

“The Coding Machine” at Meta – with Michael Novati

CMake 4 0: What You Need to Know
▶︎

CMake 4 0: What You Need to Know

CppCon 2014: Mike Acton "Data-Oriented Design and C++"
▶︎

CppCon 2014: Mike Acton "Data-Oriented Design and C++"

C++ Reflection - Back on Track - David Olsen - C++Now 2024
▶︎

C++ Reflection - Back on Track - David Olsen - C++Now 2024

Co-Creator of Haskell: Useless vs Useful Languages, Rust vs C, Functional Programming | Simon Jones
▶︎

Co-Creator of Haskell: Useless vs Useful Languages, Rust vs C, Functional Programming | Simon Jones

Something is jamming GPS over Europe. Here's what we found
▶︎

Something is jamming GPS over Europe. Here's what we found

WHY did this C++ code FAIL?
▶︎

WHY did this C++ code FAIL?

When Nanoseconds Matter: Ultrafast Trading Systems in C++ - David Gross - CppCon 2024
▶︎

When Nanoseconds Matter: Ultrafast Trading Systems in C++ - David Gross - CppCon 2024

How Much Memory for 1,000,000 Threads in 7 Languages | Go, Rust, C#, Elixir, Java, Node, Python
▶︎

How Much Memory for 1,000,000 Threads in 7 Languages | Go, Rust, C#, Elixir, Java, Node, Python

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup
▶︎

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup

My Favorite Way to Learn a New Codebase
▶︎

My Favorite Way to Learn a New Codebase

Investigating Legacy Design Trends in C++ & Their Modern Replacements - Katherine Rocha  C++Now 2024
▶︎

Investigating Legacy Design Trends in C++ & Their Modern Replacements - Katherine Rocha C++Now 2024

Designing a Slimmer Vector of C++ Variants - Christopher Fretz - C++Now 2024
▶︎

Designing a Slimmer Vector of C++ Variants - Christopher Fretz - C++Now 2024

Async Stacks: Making Senders and Coroutines Debuggable - Ian Petersen & Jessica Wong - CppCon 2024
▶︎

Async Stacks: Making Senders and Coroutines Debuggable - Ian Petersen & Jessica Wong - CppCon 2024

Python Modules | Python Modules Tutorial | What Are Python Modules | Intellipaat
▶︎

Python Modules | Python Modules Tutorial | What Are Python Modules | Intellipaat

The Absolute Best Intro to Monads For Software Engineers
▶︎

The Absolute Best Intro to Monads For Software Engineers