Please rotate your tablet to be horizontal.

You can dismiss this notice but please note that this experience has not been designed for mobile devices and so will be less than optimal

Looking for an interactive way to learn modern C++? Have a look at my in-person training at CppNorth 2023:

Meet me in Toronto!

#cpp #CppNorth #training

In today’s @CppNorth talk "Using Sender/Receiver to Implement Control Flow for Async Processing" (9 AM MDT), Steve Downey will explore how the components & connectors for C++26's Sender/Receiver framework are to fit together
#cpp #cpp26 #cplusplus #CppNorth

We are excited to have Bill Hoffman speaking about CMake at the CppNorth conference. His talk covers the latest in C++20 modules in #CMake. For more information, visit: #cpp #CppNorth

In today’s @CppNorth talk "Exceptionally Bad" (11:00 AM MDT), Peter Muldoon will discuss the original intent of exceptions & how their mechanics work, as well as cases of exception misuse + some better ways to handle each situation
#cpp #cplusplus #CppNorth

In today’s @CppNorth talk "C++ Modules” (2:30 PM MDT), @Bloomberg’s Daniel Ruoso will explore the challenges that header units, as specified in C++20, create for implementers, plus some possible solutions to those challenges
#cpp20 #cpp #cplusplus #CppNorth

During tonight's lightning talks session at @CppNorth (8 PM MDT), @Bloomberg engineer Chris Fretz will share some fascinating tricks that can be used to simulate modern C++ features in older standards
#cpp #CppNorth #cplusplus

It's nice to have people on campus again! C++ is happening now! Check out their video from past years at the Center: #CppNorth @CppNorth #cpp #cpp23

In today’s @CppNorth talk "Requirements for C++ Successor Languages" (9:00 AM MDT), @Bloomberg engineer @bretbrownjr will discuss how to consider the feasibility & velocity in converting existing #cplusplus projects to the Next Big Thing
#cpp #CppNorth #cpp20

Off I go to #CppNorth! The estimated travel time is 27 hours. Excited to give a talk about BLADE, the GPU-based beamforming pipeline of the Allen Telescope Array.

I'll be airing grievances about integers at #CppNorth in Aspen in May I got a lot of problems with you people and now you're gonna hear about it!

The CppNorth 2023 Call for Submissions is now open!


Today, during @CppNorth 2022 (11 AM MDT), Peter Muldoon will share some of the key lessons he's learned about how to successfully redesign a legacy system during his 30-year career as a software engineer
#cplusplus #cpp #CppNorth

The style of `const unsigned int` is named "const west". `unsigned int const` is "east const". This style debate has split the C++ community. My compromise style was rejected, I feel, without sufficient consideration -- central const: `unsigned const int`. #CppNorth

Back To Schedule

C++ and Safety

16:45 - 17:45 Monday 17th July 2023 EDT Vanity Fair

Organisations such as the National Security Agency (NSA) and the National Institute of Standards and Techology (NIST) are currently urging developers to move away from programming languages that are not memory safe. C++ is arguably not a "safe" programming language in its current form. Why is that? And should we do anything about it? If yes, what, and how? Have we arrived at a crossroads for the future evolution of C++? What does "safety" even mean, and how is it different from "security" and "correctness"?

In this talk, we attempt to give useful definitions for these terms. For safety in particular, we can distinguish between functional safety and language safety, and identify different aspects of language safety (of which memory safety is one). We discuss how and why C++ is considered "unsafe" and what consequences follow from that for different domains and use cases. We look at how other programming languages, such as Java, Rust, and Val avoid such safety issues, what tradeoffs are involved in these strategies, and why we can't easily adopt any of them for C++. We consider the tooling available today to mitigate safety issues in C++, such as sanitisers and static analysers, and their limitations. Finally, we look at the future evolution of C++ and discuss recent standardisation proposals targeted at making C++ more safe.

Timur Doumler

Developer AdvocateJetBrains

Timur Doumler is the Developer Advocate for C++ tools at JetBrains and co-host of CppCast. He is an active member of the ISO C++ standard committee, where he is currently co-chair of the Contracts study group. As a developer, he worked many years in the audio and music technology industry and co-founded the music tech startup Cradle. Timur is passionate about clean code, good tools, low latency, and the evolution of the C++ language.