Edited by humans. Written by AI. How our editing works
All articles

Revitalizing C++: Balancing Safety, Efficiency, and Legacy

Exploring C++'s evolution towards safety and efficiency amidst rising competition from languages like Rust.

Samira Barnes

Written by AI. Samira Barnes

January 8, 20264 min read
Share:
Dark blue presentation slide for CppCon 2025 with yellow title text, speaker name, and conference branding in bottom corners

Photo: CppCon / YouTube

Revitalizing C++: Balancing Safety, Efficiency, and Legacy

C++, a language renowned for its raw speed and flexibility, stands at a pivotal juncture. As software engineering increasingly prioritizes safety, C++ finds itself in a contest of evolution with languages like Rust, which champion safety by design. At the recent CppCon 2025, John Lakos, a senior architect at Bloomberg and an influential figure in the C++ Standards Committee, delivered a compelling talk on this very subject.

The Evolutionary Imperative

Lakos' presentation, titled "Making C++ Safe, Healthy, and Efficient," underscores the urgency for C++ to adapt. "C++ has come under criticism," Lakos notes, highlighting the growing scrutiny from regulatory agencies and the cybersecurity community. As these entities question the safety of legacy systems, the pressure mounts on C++ to innovate without sacrificing its hallmark efficiency.

The central thesis of Lakos' talk is that C++ must embrace a safety-first paradigm while maintaining its performance edge. This involves adopting safety mechanisms and safety-by-default principles to better support the developer ecosystem. "We want safety, but not at the expense of needed performance," Lakos insists, reflecting the delicate balance the language must strike.

Safety, Correctness, and Efficiency

In defining safety, Lakos broadens the scope to include correctness and security. "Correctness matters. Security matters," he asserts, emphasizing that a program is not safe if it is vulnerable to exploitation or fails to perform as intended. This expanded definition demands an ecosystem that supports robust development practices and discourages potential migrations to other languages.

However, Lakos distinguishes between runtime efficiency and runtime checking, cautioning against the misconception that these are inherently at odds. "There isn’t a contradiction between runtime efficiency and safety," he explains, though acknowledging the challenges posed by runtime checking.

The Role of the C++ Community

The evolution of C++ is not a solitary endeavor. Lakos calls for a collaborative effort within the C++ community and industry stakeholders. "We all should pitch in like NATO and get it done," he urges, drawing an analogy to collective security. The roadmap for C++26 and beyond is not merely a technical blueprint but a collective mission to secure the language's future.

Lakos also sheds light on the often opaque process of standardization, humorously describing it as "how the sausage is made." The journey from proposal to standard involves extensive prototyping and collaboration, with Bloomberg playing a pivotal role in sponsoring open-source initiatives and prototyping new features.

Addressing the Competition

The talk does not shy away from the competition posed by Rust, a language that has gained traction for its emphasis on memory safety and concurrency. Lakos acknowledges Rust’s appeal but questions the necessity of abandoning C++. "If all of you knew right now that C++ 32 would be just as safe as Rust, would you really be so excited to run away?" he challenges.

This rhetorical stance is underpinned by a pragmatic recognition of the immense software capital invested in C++. Lakos argues for incremental improvement, preserving existing investments while positioning C++ as a viable choice for modern development challenges.

A Path Forward

The path forward for C++ involves not only technical enhancements but also cultural shifts within the developer community. Lakos envisions a future where C++ is easier to use securely and correctly, closing the gap with languages perceived as safer. This vision requires sustained investment in ecosystem support, from tooling improvements to educational efforts.

In conclusion, John Lakos' talk at CppCon 2025 is a clarion call for the C++ community to embrace change. It is a roadmap for revitalizing a language that, while mature, is far from obsolete. As the software landscape evolves, so too must C++, balancing its legacy of performance with the imperative of safety.

By Samira Okonkwo-Barnes, Buzzrag Tech Policy & Regulation Correspondent

From the BuzzRAG Team

We Watch Tech YouTube So You Don't Have To

Get the week's best tech insights, summarized and delivered to your inbox. No fluff, no spam.

Weekly digestNo spamUnsubscribe anytime

More Like This

Diagram showing the scan algorithm with five data blocks, their sums (18, 15, 14, 19, 8), and resulting prefix sums (0, 18,…

Unlocking C++ Efficiency: Lazy Ranges & Parallelism

Explore how lazy ranges and parallelism in C++ can enhance code efficiency and overcome memory bottlenecks with Daniel Anderson's insights.

Dev Kapoor·6 months ago·3 min read
Diagram of std::hive data structure showing three linked blocks with erasures list head pointer, demonstrating container…

C++26: New Features and What They Mean for You

Explore C++26's new features like static reflection, contracts, and more.

Mike Sullivan·6 months ago·3 min read
Two professional headshots of men against a blue background with "BEN SMITH • JAMES BESWICK" and "gjoto;" branding…

Workflows vs. Code: Navigating Tech Regulations

Explore how workflows in software development impact tech regulations and industry standards.

Samira Barnes·6 months ago·3 min read
Jonathan Müller speaking at CppCon 2025 about Cache-Friendly C++, scheduled for September 13-19

Unlocking C++ Performance: The Cache-Friendly Approach

Explore cache-friendly C++ techniques to boost performance by understanding CPU caches and data structures.

Tyler Nakamura·7 months ago·3 min read
C++ code snippet showing enum with bitwise OR operation, questioning whether the implementation approach is correct

C++ APIs: Lessons from Code Review at CppCon

Explore modern C++ API techniques with Ben Deane's insights from CppCon 2025.

Mike Sullivan·7 months ago·4 min read
Mikhail Svetkin presents on constexpr and C++ safety at Meeting C++ 2025, shown speaking on camera in the top right corner…

Constexpr: A New Dawn for C++ Safety Standards

Explore how constexpr in C++ could redefine safety and regulation in tech-heavy industries like automotive and aerospace.

Samira Barnes·6 months ago·3 min read
Colorful graphic split into four sections featuring Linux penguin, Steam logo, French flag, and text highlighting Linux…

Linux 7.0 Ships While AI Bug Hunters Reshape Security

Linux kernel 7.0 brings major file system improvements as Anthropic's AI bug-finding tool discovers decades-old vulnerabilities, changing cybersecurity forever.

Samira Barnes·3 months ago·7 min read
Smartphone displaying YouTube's time management settings for Shorts feed limits, with blue-to-pink gradient background and…

YouTube Lets Users Finally Kill Shorts Feed—With Caveats

YouTube now allows users to set a zero-minute daily limit on Shorts, effectively removing them from feeds. Here's what the feature actually does—and doesn't—do.

Samira Barnes·3 months ago·5 min read

RAG·vector embedding

2026-04-15
884 tokens1536-dimmodel text-embedding-3-small

This article is indexed as a 1536-dimensional vector for semantic retrieval. Crawlers that parse structured data can use the embedded payload below.