Stefan Reinalter
banner
molecularmusing.bsky.social
Stefan Reinalter
@molecularmusing.bsky.social
Founder of Molecular Matters • C++ & low-level programming • Created Live++ (@liveplusplus.bsky.social)
https://liveplusplus.tech
Why is *every* company on this damn planet shoving down AI our throats?

I cannot tell you how mad stuff like this makes me.
November 10, 2025 at 4:18 PM
Terry Pratchett's writing of the Nac Mac Feegle accent always makes me smile. It's so perfect, I can hear a Scottish voice talk in my mind :)
November 9, 2025 at 11:47 PM
Always interesting how -- even after so many years -- there are still new things to be discovered that need to be taken into account to accommodate different companies' workflows.
October 29, 2025 at 2:52 PM
I recently gave a talk + live demos about Live++ and its use cases. One of them included fixing bugs on the fly, and feedback I got mentioned that people didn't think about hot-reloading code while the exception handler was open.

Naturally, there's now a hint at the bottom, since this is powerful!
October 27, 2025 at 1:17 PM
Questions surrounding this have come up now and again, so the docs now hopefully clarify the reasons behind some of Live++'s behaviour:
September 18, 2025 at 10:25 AM
Mario Chocolate
August 2, 2025 at 5:38 PM
Definitely one of the hackiest pieces of code I've written in the last decade or so, it's nasty.
July 1, 2025 at 10:50 AM
Rip and tear, until it is done.
June 30, 2025 at 3:10 PM
After debugging for a week, I guess I'm a member of the "have to work around a platform SDK bug" now.

Do I get a medal or something?
June 24, 2025 at 4:01 PM
Probably one of my favourite tricks for finding memory stomps:
1) On alloc: put allocation at very end of separate page, followed by a NoAccess page.
2) On free: mark allocated pages as NoAccess.

Guaranteed to find even one-byte stomps and use-after-free.

#cpp
June 9, 2025 at 9:23 AM
Pre-order has arrived!
June 5, 2025 at 7:48 AM
That was a fun one to figure out and fix.
"Push" and "pop" are no bueno in this case.
May 30, 2025 at 3:31 PM
Live++ can talk to the Switch devkit!
The "easy" part is done, now begins the hard part.
May 20, 2025 at 10:19 AM
Did we just hit a bug where the game doesn't remove the collision so you cannot actually walk to Room 46?
If so, I'm pissed. Royally.
May 19, 2025 at 9:36 PM
Wrong, but right at the top with the biggest font, emanating confidence.
May 5, 2025 at 12:37 PM
"There are 2 hard problems in computer science: cache invalidation, naming things, and off-by-1 errors."

Managed to get caching stuff wrong, only took... almost 4 years for a customer to finally stumble upon it and make everything crash and burn, confusing me for days.
April 18, 2025 at 3:40 PM
Want to see some cursed C++ code that makes the MSVC toolchain generate a mangled name which cannot be demangled by any tool?

Anonymous namespaces, another cursed feature in the context of Live++.
April 10, 2025 at 6:37 PM
So I gave BC a spin the last days.
Yeah, I'm convinced. Explorer integration is very handy indeed, the ability to copy stuff in the diff from left <-> right and alter the files is great.
And it does diffs for XLSX and other formats.

Thanks for making the argument guys :).
April 4, 2025 at 12:08 PM
For people interested in this: I force-included a "preamble.h" using /FI (there's a similar option for Clang) which looks like the following:
(Godbolt doesn't show all hangul fillers correctly, but it compiles for MSVC, Clang, and GCC)
March 26, 2025 at 4:00 PM
Never noticed that VS has a "Restart" now, with a surprisingly familiar icon ;). "Restart" is a simple "close, build, start" though.

Someone at MSFT is clearly paying attention to what I'm doing with Live++, same with their recently announced Dynamic Debugging, which has a heavy upfront tax.

#cpp
March 26, 2025 at 12:49 PM
Can't decide between snake_case, camelCase and PascalCase?
Kebab-case not available in your language?
Fan of PascalCase, but GPURTKernel looks stupid?

C++43 has got you covered with Whitespace Case: opt-in via a #define!

(This is my last one, I'll show myself out...)

#cpp
March 25, 2025 at 7:22 AM
Updated to a future C++43 compiler: this has 'auto auto' types, and even has opt-in 'auto auto' for user-defined types! No more auto vs. no auto.

Works with MSVC, Clang, compiles and runs!

First one to figure out how this works gets a free 1-year individual license for Live++.
March 24, 2025 at 4:57 PM
Tired of having to add types to your code in C++?
Can't decide on auto vs. no auto?

I have another simple rule in my codebase:
#define used types once at the top, let the compiler figure out the rest and stop caring about details.

With video proof this time!

#cpp
March 24, 2025 at 8:46 AM
"Just patch functions" they said.
"Just fix the relocations" they said.

Trust me when I say that no C++ hot-reload solution handles this correctly, neither commercially available nor open source.

It's hard to handle correctly, but I have an idea on how to pull it off.
March 18, 2025 at 3:50 PM
1) Store your localized text in a file that can be included by the C++ compiler as well
2) Use sizeof(printf()) and a bit of macro magic
3) Get the compiler to check format specifiers in all strings, including localizations
4) Profit!

#cpp #hack
January 24, 2025 at 1:46 PM