Welcome to SwedenCpp
Latest blogs, videos, podcasts and releases in one stream
Friday, July 24, 2026
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 5Making sure to use the non-agile delegate non-agile-ly. The post Making an agile version of a Windows Runtime delegate in C++/WinRT, part 5 appeared first on The Old New Thing .πThe Old New Thing
Typed Linear Algebra - How to Not Crash on Mars - FranΓ§ois Carouge - C++Now 2026π₯CppNow
When Code Writes Back: Making AI Coding Agents Actually Work - Tobias Baumbach - ADC 2025π₯audiodevcon
Meeting C++ Student Showcase - full recordingπ₯MeetingCpp
struct [C++ Shorts Lesson 25]π₯Mike Shah
Introducing Logarithmic Quantities and UnitsIntroducing Logarithmic Quantities and Units Decibels are everywhere in engineering. Signal levels in dBm , sound pressure in dB SPL , voltage gain in dB , filter slopes in dB/octave . The neper, pH, and stellar magnitude are the same idea wearing different clothes. Yet, to the best of our knowledge, no general-purpose units library models logarithmic quantities correctly. Most do not model them at all. The few that do treat a decibel as a non-linear scale or an offset unit, and that choice gets the arithmetic wrong in ways that compile silently. This article is a request for feedback . We believe we have a correct design, derived from the same affine-space model we introduced for absolute quantities . It also aims to stay consistent with the ISO/IEC 80000 standards: especially IEC 80000-15:2026, Logarithmic quantities and their units , which consolidates the logarithmic-quantity rules once held in ISO 80000-1:2009 (Annex C); together with ISO 80000-2 (the logarithm functions lb , ln , lg ), ISO 80000-8 (acoustics), and IEC 80000-13 (information theory). We have read those against this design, cite them throughout, and call out the one place we knowingly diverge from them ( Open Question 5 ). This post describes the design in full, from the quantity spec to the named units, the arithmetic, the conversions, and every domain we surveyed (audio, RF, acoustics, chemistry, astronomy, music, information theory). Then it lays out the open questions , each with every alternative we considered and our current preference. Before we implement any of this in mp-units , we want the people who use these quantities daily to tell us where we are wrong.πmp-unitsIf this page is useful, please consider donating a coffee
Thursday, July 23, 2026
The PImpl idiom and the C++26 std::indirect typePImpl (which stands for Pointer to implementation) is a programming tehnicque to remove implementation details from a class by placing them in a separate class that is accessed through an opaque pointer. Its purpose is to separate interfaces and implementations and minimize compile-time dependencies. In this article, weβll at how the PImpl idiom is typically ... Read more The post The PImpl idiom and the C++26 std::indirect type first appeared on Marius Bancila's Blog .πMarius Bancila's Blog
The curiously recurring template pattern explainedπ₯PVS-Studio
Constructing unary, binary, and call expressionsπ₯PVS-Studio
Coroutines and C++ - Async Without The Pain?π₯CppOnline
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 4Optimizing the context check. The post Making an agile version of a Windows Runtime delegate in C++/WinRT, part 4 appeared first on The Old New Thing .πThe Old New Thing
Meditations on Code As Art - David Whitney - NDC Toronto 2026π₯NDC Conferences
Writing a Windows Kernel Driver in an hour or two - Pavel Yosifovich - NDC Toronto 2026π₯NDC Conferences
On the benefits of non-intrusiveness - Patrice Roy - NDC Toronto 2026π₯NDC Conferences
Benchmarking and optimizing the Carbon compiler - Chandler Carruth - NDC Toronto 2026π₯NDC Conferences
Expression-based Programming for Better Code? - Jason Turner - NDC Toronto 2026π₯NDC Conferences
TaskPool - totalCPUs and creating a task pool- Part 7 of N [D Language - Dlang Episode 154]π₯Mike ShahWednesday, July 22, 2026
C++: Write, shorten, optimizeI stumble upon a C++ function that will be a really illustrative example of how refactoring can both shorten and optimize code. Today, we'll need to dust off our human brains in the era of vibe...πfrom pvs-studio.com
Pure Virtual C++ 2026 Is a WrapPure Virtual C++ 2026 is a wrap. Every featured and on-demand session is now available on YouTube β catch up on C++/Rust interop, AI-driven tooling, build performance, and more. The post Pure Virtual C++ 2026 Is a Wrap appeared first on C++ Team Blog .πC++ Team Blog
Managing AST node memory like a proπ₯PVS-Studio
How compilers handle unary operatorsπ₯PVS-Studio
From Institutions to Individuals: the White House Report on Revitalizing U.S. Scientific LeadershipIn 1945, Vannevar Bush published a report entitled Science: The Endless Frontier. His thesis was that prosperity follows from basic research. The report was highly influential in the United States and elsewhere. It led to the creation of an entirely new government bureaucracy. With this report, Bush popularized the linear model of innovation: innovation (such β¦ Continue reading From Institutions to Individuals: the White House Report on Revitalizing U.S. Scientific LeadershipπDaniel Lemire's blog
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 3The object that actively refuses to be marshaled. The post Making an agile version of a Windows Runtime delegate in C++/WinRT, part 3 appeared first on The Old New Thing .πThe Old New Thing
CLionβs Classic Engine Unbundled: Whatβs NextLast year, we announced that CLion Nova would become the default C and C++ engine for all users and that all new language improvements would be developed for Nova. With CLion 2026.2, weβre taking the next step in that transition β the legacy Classic engine is moving from the CLion bundle to an optional plugin. [β¦]πCLion : A Cross-Platform IDE for C and C++ | The JetBrains Blog
A Sine By Any Other Language - David Su - ADC 2025π₯audiodevcon
How much are C++ Professors talking to each other?π₯MeetingCpp
memory leak exercise [C++ Shorts Lesson 24]π₯Mike ShahTuesday, July 21, 2026
Look Up Geoscience uses ParaView to improve subsurface visualizationThis is a guest blog post from Nicolas Cami and Florian Carnac from Look up Geoscience. They share their recent work using ParaView as a framework for EarthSightβ’ software. Thanks to their innovative approach using QML in ParaView, they created a nice-looking application to help with subsurface modeling, simulation, and visualization. Subsurface modeling software has [β¦]πKitware Inc
Prefactoring: Clear the Way for Your New Feature@media only screen and (max-width: 600px) { .body { overflow-x: auto; } .post-content table, .post-content td { width: auto !important; white-space: nowrap; } } This article was adapted from a Google Tech on the Toilet (TotT) episode. You can download a printer-friendly version of this TotT episode and post it in your office. By Rahul Singal βFirst make the change easy, then make the easy change.β - paraphrased from Kent Beck You're working on a new feature, but the existing code wasn't written with future changes in mind. Trying to force the feature in directly gets complicated fast. One change leads to another, and before you know it you're already a few files deep fixing things you never planned to touch. Prefactoring (short for "preparatory refactoring") is the practice of reworking existing code to make it more suitable for an upcoming change before you actually implement the new functionality. Instead of cleaning up code as an afterthought or trying to force a new feature into an incompatible structure, you restructure the codebase first. Prefactoring helps you: Easily implement new features: Restructuring the codebase first ensures your new feature fits naturally into the code. Speed up reviews: It's easier to review the refactoring and the feature in separate changes. Avoid bugs: Isolating cleanups from functional logic can help prevent bugs . Roll back safely: If you need to roll back, it is much easier to revert small, focused changes. Here is a simplified example of a prefactoring change: Change 1 (Prefactoring) Extract display name helper to remove duplication. Change 2 (Feature) Add middle name support. + def get_display_name(user): + return f"{user.first_name}β {user.last_name} # Profile page - display_name = f"{user.first_name} {user.last_name}" + display_name = get_display_name(user) # Email template - greeting = f"Hi {user.first_name} {user.last_name}, " + greeting = f"Hi {get_display_name(user)}," def get_display_name(user): - return f"{user.first_name} {user.last_name}β + return f"{user.first_name} {user.middle_name} {user.last_name}" You can prefactor a change that is already in review too! If your reviewer suggests a related cleanup during review, you can also extract it into a new base change to keep your current change focused on the feature. Note that not every cleanup needs to be prefactoring: you can do the cleanup in a follow up change if the cleanup doesnβt block your feature, or even in the same change if the cleanup is small enough.πGoogle Testing Blog
Pure Virtual C++ 2026 Is Now Live!Pure Virtual C++ 2026 is streaming now β watch five featured sessions live with Q&A, plus a full on-demand playlist, all free. The post Pure Virtual C++ 2026 Is Now Live! appeared first on C++ Team Blog .πC++ Team Blog
How to handle literal expressions in ASTπ₯PVS-Studio
Building an AST for Your Own Languageπ₯PVS-Studio
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 2Short-circuiting the easiest case. The post Making an agile version of a Windows Runtime delegate in C++/WinRT, part 2 appeared first on The Old New Thing .πThe Old New Thing
Generic Programming for Multidimensional Arrays - Alfredo A. Correa - C++Now 2026π₯CppNow
Louis Tatta on the C++ Alliance: Mission, People, and How It Worksπ₯C++ Alliance
Let's make a programming language. ASTπ₯PVS-Studio
valgrind and asan for memory leaks [C++ Shorts Lesson 23]π₯Mike Shah
Coroutines (wonder)landπ₯GlobalCppMonday, July 20, 2026
C++ Dependencies Without the Headache: vcpkg + Copilot CLIAt Pure Virtual C++ 2026, we build a C++ console app from an empty folder using CMake, MSVC, and GitHub Copilot CLI. This walkthrough shows a practical prompt sequence for dependency selection, reproducible builds, and controlled updates. The post C++ Dependencies Without the Headache: vcpkg + Copilot CLI appeared first on C++ Team Blog .πC++ Team Blog
Pure Virtual C++ 2026 Is Tomorrow and On-Demand Sessions Are Now AvailableThe on-demand sessions for Pure Virtual C++ 2026 are available now on YouTube. Watch seven talks on SPGO, vcpkg + Copilot CLI, CMake Tools, PackageReference, MSVC upgrades, and C++23/26 status β then join us live tomorrow. The post Pure Virtual C++ 2026 Is Tomorrow and On-Demand Sessions Are Now Available appeared first on C++ Team Blog .πC++ Team Blog
Compile-Time Optimization Through Dynamic C++ Programmingπ₯CppOnline
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 1The easy case is easy. The post Making an agile version of a Windows Runtime delegate in C++/WinRT, part 1 appeared first on The Old New Thing .πThe Old New Thing
C++ Weekly - Ep 542 - C++26's inplace_vectorπ₯Jason Turner
A Special General Meeting has been scheduledThe ACCU Committee has scheduled an online Special General Meeting for 19th September, 2026 at 19:00 BST. More information can be found on the AGM page (members only - must be logged in).πACCU
Enumerate and Extract Audio Buffers When Debugging C++ Applications - Henning Meyer - ADC 2025π₯audiodevcon
A professors advice on what topic to choose for your thesisπ₯MeetingCpp
task and taskPool - Example of executing tasks in an array- Part 6 of N [Dlang Episode 153]π₯Mike ShahSunday, July 19, 2026
Lock-free Programming is Dead - Long Live Lock-free Programming! - Fedor G Pikus - C++Now 2026π₯CppNow
A History of FLAC - The Free Lossless Audio Codec - Josh Coalson - ADC 2025π₯audiodevconSaturday, July 18, 2026
C++ User Group Organizer Panelπ₯MeetingCpp
global variables [C++ Shorts Lesson 22]π₯Mike Shah