Lightning Talk: When Weird Things Happen - Ruslan Arutyunyan - C++Now 2026๐ฅCppNowWelcome to SwedenCpp
Latest blogs, videos, podcasts and releases in one stream
Thursday, November 5, 2026
Lightning Talk: When Weird Things Happen - Ruslan Arutyunyan - C++Now 2026๐ฅCppNow
Kitware at the DARPA Triage Challenge Finals Expo: Advancing AI-Assisted Medical TriageKitware is attending the DARPA Triage Challenge Finals Expo to showcase how our expertise in artificial intelligence (AI), computer vision, and physiological simulation is helping address challenges in military medical care.๐Kitware Inc
Interview with Guy Davidson on C++26 and profiles for Meeting C++ 2026๐ฅMeetingCpp
How C++ Community Events Keep the C++ Language Growing๐ฅC++ Alliance
A performance trap: when store forwarding failsA store does not go straight into the cache. Waiting for that write would stall the processor. It sits in a store buffer, and a later load can take its bytes from that buffer. That is store forwarding. Forwarding works when the load is the same size as the store, or smaller and completely inside โฆ Continue reading A performance trap: when store forwarding fails๐Daniel Lemire's blog
CLion 2026.3 Is HereWith JetBrains Air, agent-assisted embedded debugging and CMake project setup, plus support for NVIDIA CUDA Tile C++ and ISPC. CLion 2026.3 is now available. This latest version of the JetBrains IDE for C and C++ includes the following key features: You can download CLion 2026.3 from the link below, via the Toolbox App, as a [โฆ]๐CLion : A Cross-Platform IDE for C and C++ | The JetBrains BlogIf this page is useful, please consider donating a coffee
Wednesday, November 4, 2026
CMake 4.5.0-rc3 is ready for testingThe third CMake 4.5 release candidate!๐Kitware Inc
Why C++ Programmers Aren't Actually Antisocial | Erin Looney๐ฅC++ Alliance
There are things with ranks, but itโs not always clear what the ranks meanThe problem with documentation written by people who know the feature too well. The post There are things with ranks, but itโs not always clear what the ranks mean appeared first on The Old New Thing .๐The Old New Thing
std::string_view in C++ Explained ๐ฅ | Substring Without Copying! | C++17๐ฅCppNuts
Who Owns This Memory?In my last blog, I said that to_numpy() gives you a view for some VTK arrays and a copy for others. That deserves a closer look. When two libraries share memory, the interesting question is always the same: who owns it? Who frees it, and when? Letโs start on the numpy side.๐Kitware Inc
Kitware and UNC-Chapel Hill Release New Imaging Dataset Through ARPA-H AIR ProgramKitware and the University of North Carolina at Chapel Hill are releasing the first installment of the Multimodal Imaging Dataset for Cerebrovascular Disease through the Testbed for Autonomous Interventions and Robotics (TAIR) project. Developed as part of the Advanced Research Projects Agency for Health (ARPA-H) Autonomous Interventions and Robotics (AIR) program, this first-of-its-kind dataset combines video fluoroscopy recordings with corresponding CT/MR angiography data to support research in autonomous robotics and cerebrovascular disease.๐Kitware Inc
Open source as a research methodMany people still picture innovation as a line. The professor thinks and publishes. The engineer reads the paper and designs a product. The customer consumes it. It rarely works that way. The industrial revolution was not set off by professors writing papers. It was driven by demand for cheap and better clothing for the masses. โฆ Continue reading Open source as a research method๐Daniel Lemire's blog
ใใคใใฃใC++ใทใณใปใจใณใธใณใใใฉใฆใถใซ็งปๆคใใ - Katokatoneใใใฎๆ่จ - Kazuhito Inoue - ADC Japan 2026๐ฅaudiodevconTuesday, November 3, 2026
The Hidden Superpower of Modern CPUs - Why ILP Can Make โMore Workโ Run Faster - Sampad Acharya๐ฅCppNow
How do you implement a random-access database when you donโt have random-access external storage?You just store it all in memory, in your own program. The post How do you implement a random-access database when you donโt have random-access external storage? appeared first on The Old New Thing .๐The Old New Thing
How aย processย becomes aย daemon! (C example)๐ฅJacob Sorber
C++26 DIS failed, how does C++ survive?On October 23, 2026, the unthinkable happened. It was supposed to be a mere formality: C++26 was up for a vote by the ISO National Bodies (NBs). The options are always approval, rejection, or abstention. Comments are also allowed. Since 1998, this process had run quietly and smoothly. Not โฆ๐AndreasFertig.comMonday, November 2, 2026
Learning C++ With C++26's Reflection with Ryan Keane - CppCast 414 / C++ Weekly 557๐ฅJason Turner
Sneaking into the auditorium for the Windows 2000 launch rehearsalWait, that's not him. The post Sneaking into the auditorium for the Windows 2000 launch rehearsal appeared first on The Old New Thing .๐The Old New Thing
Types of Recursion in C++ Explained ๐ฅ | Direct, Indirect, Tail, Head & More๐ฅCppNuts
In C++, = default and {} are not the same constructorYou can write an empty default constructor as span() = default or as span() {}. It can have remarkable effects on performance. struct span { const char *p; int len; const char *end; span() = default; // or span() {} span(const char *s, int n) : p(s), len(n), end(s + n) {} }; The constructor โฆ Continue reading In C++, = default and {} are not the same constructor๐Daniel Lemire's blog
Implementing C++ Standard Library - Design and Optimisations in Libc++ - Hui Xie - ACCU 2026๐ฅACCUConf
Are You Shipping Your Source Code? - Ryan Wardell - ADC Japan 2026๐ฅaudiodevconSunday, November 1, 2026
Lightning Talk: ?: - Jonathan Mรผller - C++Now 2026๐ฅCppNow
The Problem with C++ Safety (Part 2): Modern C++ Is a Mindset, Not a StandardIn the first part, we saw how hard it is to be certain that loop-based C++ code is correct. Now Klaus presents the modern solution, a single algorithm call that is correct by inspection, and explains why the real problem in our community is an educational one, made worse by AI tools that keep generating classic C++.๐MC++ BLOGSaturday, October 31, 2026
CallMeMaybe - Building Modern Runtime Reflection via C++26 - Laurie Kirk - ACCU 2026๐ฅACCUConf
pbrt-v4 with BazelThe almost forgotten backlog story I have a personal backlog of things I want to do. On Aug 9, 2020, I wrote down this: This issue is now more than six years old. Other, more important things popped up in my life in the idea went further and further down in my backlog. I even forgot it was there. With the advent of vibe coding, the idea popped up again.๐Vertexwahn
Cppcon 2026 trip report | Modern Cpp Series Ep. 250๐ฅMike Shah
Hans Wennborg: Windows debug info - CodeView and PDB files๐ฅSwedenCpp
**arr[3] vs 3[arr] in C++ ๐คฏ | The Weird Array Trick Explained!**๐ฅCppNuts
ะกััะธะผ ะฝะฐ 10ะบ ะฒ ัะตะปะตะณัะฐะผะผะต: ะฟะธัะตะผ PBQP solver๐ฅKonstantin Vladimirov
Beating the compiler at signed 32-bit divisionDividing integers is slow on our processors. A 32-bit division costs: processor latency throughput Emerald Rapids about 12 cycles one every 6 cycles Zen 4 9 to 12 cycles one every 6 cycles Zen 5 10 to 13 cycles one every 6 cycles Arrow Lake performance core 12 cycles one every 6 cycles Apple M4 โฆ Continue reading Beating the compiler at signed 32-bit division๐Daniel Lemire's blogFriday, October 30, 2026
A slightly better ThreadPoolExecutor in Pystd through typesIn the previous post we looked at a simple multithreaded task executor that behaves roughly like its Python standard library counterpart . The biggest missing feature was being able to return values from run tasks via future objects. In a fully dynamic language like Python this is fairly straightforward, whereas in a language with static typing, such as C++, things are trickier. The simplest solution is merely to make your Executor class a template, parameterized by the function you want to run. The obvious downside is code bloat. If your program has an Executor and Executor , all of their code is duplicated in the binary, even though 90% of it is probably the same. Also, due to the magic of template instantiation, compilation is slower. Another downside is that you can't run tasks that do different things, especially having different return value types, with one Executor. I set about trying to solve both of these issues at the same time. It turned out that if you are willing to tolerate just a little bit of OO and one extra malloc per task, one can get a fairly nice solution. As a task executor is used for things that run for a long time and consume a lot of resources, the overhead is insignificant for most use cases. And if it absolutely, positively matters to someone, they are going to roll their own anyway. Trying to cater to those use cases would be a waste of effort in any case. These requirements point to a fairly obvious solution. The executor deals with TypeErasedFuture/Promise types that store all the task metadata via good ol' void pointers and virtual functions. The concrete Future and Promise tasks are just type safe shims on top of them. The entire implementation required the use of only two reinterpret_cast s, which is quite surprising. I would have expected more, but sometimes you get lucky, I guess. The Executor gets to remain a concrete class. The only template in it is the submit method that preserves the type erased task and returns a typed future object. Using this is not quite a simple as its Python counterpart, but still fairly easy. After you have written a class that implements the executor's task interface, submitting work and consuming the results is done like this. If the return value had been something other than void, .get() would return a reference to the result object. The tradeoff between the ease of use provided by maximal templateism and minimal code generation is clearly visible in the extra boilerplate code you need to write to get things going. But in return you get both reduced binary size and faster compile times. Whether that is an improvement or a detriment is up to you. This code is not going to win any robustness prizes (though, in the modern day of AI garbage, you never know), but the end result is more than adequate for a single evening work.๐Nibble Stew
Contains Duplicate in C++: a hash set (LeetCode 217)๐ฅDeepDiveDev
Compromised eMudhra Certificates: Update Your JetBrains IDEs, ReSharper, .NET Tools, Toolbox App, and Gateway NowSummary Available fixed versions The issue is fixed in the following versions: The 2025.2.6.* updates for all IDEs now contain only the JBR fix. They will get a separate hotfix for the JCEF problem. Until then, use a workaround to disable JCEF in your IDE (see instructions below). IDE versions 2025.1 and earlier, and Toolbox [โฆ]๐CLion : A Cross-Platform IDE for C and C++ | The JetBrains Blog
C++ Libraries - The Road Ahead - Jeffrey Garland - C++Now 2026๐ฅCppNow
The Microsoft building that was reportedly hauntedLots of rumors, little confirmation. The post The Microsoft building that was reportedly haunted appeared first on The Old New Thing .๐The Old New Thing
AMIA 2026 Annual SymposiumKitware is excited to participate in the American Medical Informatics Association (AMIA) 2026 Annual Symposium in Dallas, Texas. AMIA brings together professionals and students across the informatics community to share knowledge, foster collaboration, and advance the use of informatics to improve health and healthcare.๐Kitware Inc
2D Transforms Now Supported in 3D SlicerRegistration of 2D images, such as histology sections, X-rays, or ultrasound frames, produces 2D transforms. Until recently, Slicer could not load them properly.๐Kitware Inc
Generative Instruments with Large Piano Models - Tomek Roszczynialski - ADC Japan 2026๐ฅaudiodevcon