Dive into the world of efficient code navigation in this 46-minute conference talk from Strange Loop. Learn how stack graphs revolutionize the way developers explore large and unfamiliar codebases. Discover the challenges of implementing code navigation features like "jump to definition" and "find all references" at scale, particularly for platforms hosting millions of repositories across hundreds of programming languages. Explore the innovative use of graphical notation to define name binding rules, applicable to both dynamic languages like Python and JavaScript, and static languages such as Go and Java. Gain insights into the incremental data extraction process that enables quick processing of commits and cross-repo lookups without manual configuration. Understand how this open-source solution, built on the tree-sitter project, addresses the unique design constraints of large hosted services like GitHub. Join Douglas Creager, staff engineering manager at GitHub, as he shares his team's approach to applying academic programming language theory to enhance code comprehension for developers and maintainers alike.
Overview
Syllabus
"Incremental, zero-config Code Nav using stack graphs" by Douglas Creager
Taught by
Strange Loop Conference