Modernizing Compiler Design for Carbon Toolchain - Chandler Carruth - CppNow 2023
CppNow CppNow
32K subscribers
55,400 views
1.3K

 Published On Premiered Aug 17, 2023

https://www.cppnow.org​
  / cppnow  
---

Modernizing Compiler Design for Carbon Toolchain - Chandler Carruth - CppNow 2023
Slides: https://github.com/boostcon
---

The algorithms and data structures used for parsing and compiling in most compilers today are rooted in 50 year old computer architectures and language design realities. What would a modernized compiler design, based on modern computer architectures, leveraging data-oriented design, and targeting modern languages look like in order to maximize performance while retaining flexibility?

This talk will provide an overview of the traditional model for designing a compiler in C++ and highlight some of the key limitations of these design patterns. Then it will introduce a new set of design patterns that we are using to build the Carbon toolchain's compiler, and describe why we think they can help us reach unprecedented compile times (for a C++-like programming language). It will also show specific programming techniques that have proven useful and how we have overcome some of the traditional limitations and challenges of implementing a parser or compiler in C++.

While this talk focuses on the design and implementation of the Carbon compiler, it will also touch on the Carbon language because achieving our goals for the compiler interacted with the design of the language grammar.
---

Chandler Carruth

Chandler Carruth is the technical lead for Google's programming languages and software foundations. He has worked extensively on the C++ programming language and the Clang and LLVM compiler infrastructure. Previously, he worked on several pieces of Google's distributed build system and made guest appearances helping maintain a few core C++ libraries across Google's codebase. He received his M.S. and B.S. in Computer Science from Wake Forest University, but disavows all knowledge of the contents of his Master’s thesis. When not hammering away on a weirdly shaped keyboard, he enjoys sushi, fine dining, brown spirits, and everything about wine.
---

Video Sponsors: think-cell and Bloomberg Engineering
Audience Audio Sponsors: Innoplex and Maryland Research Institute
---

Videos Filmed & Edited By Bash Films: https://bashfilms.com/
YouTube Channel Managed & Optimized By Digital Medium Ltd: https://events.digital-medium.co.uk
---

CppNow 2024
https://www.cppnow.org​
  / cppnow  
---

#boost #cpp #compiler_design

show more

Share/Embed