Back To Schedule

Backporting Safety

14:30 - 16:00 Wednesday 1st May 2024 MT Bethe Hall
Intermediate

TBAThere has been a lot of discussion on how C++ should evolve as a language to provide better memory safety. But how do we make safe the software that we need to write now? How do we implement modern C++ safety in pre-modern environments? This talk will focus on how we utilized libraries and design patterns to architect safety in BlazingMQ, a large-scale open source distributed queuing system designed to support highly concurrent network traffic, which our team at Bloomberg wrote using C++03.

I’ll break down several library-based techniques for writing safe pre-modern C++, such as abstracting cross-thread communication, leveraging contract programming, and tracking memory across various application subsystems., I’ll even touch upon verification techniques. I will also show to what extent we can “backport” safety into C++03 using a library-only approach, exactly how much benefit a library-only approach can provide, and how this approach can inform how C++ should evolve as a language to provide better memory safety.

View Slides

Taylor Foxhall

Taylor Foxhall is a software engineer at Bloomberg who has a particular interest in systems programming. They are focused on building better and safer APIs to make C++ easier to use for everyone, and are also interested in the design and evolution of programming languages. Taylor earned a bachelor’s degree in computer science from Binghamton University.