I find C++ not hard at all when working with familiar idioms, restrictions and toolings (familiar to me). But it's hard jumping into new codebases and adjusting yourself to new patterns. Recently I did a lot of programming using C++23 Modules and it was a breeze.

There's basically dozens of very nice languages inside C++. That can be a blessing or a curse.

I'm anxious for Herb Sutter's CPP2/CPPFront to become a standard.

In February this year Herb tweaked a test case. That was his last commit to his "CPP2 syntax experiment". Don't expect it to "become a standard".

https://github.com/hsutter/cppfront/commits/main/

That's a shame! It's a lovely language.

Is it really, though, or is it just in comparison to C++?

Tbh I never expected that experiment to go anywhere. I guess that leaves Carbon (and large scale efforts to rewrite C++ in Rust).

I personally really like the syntax and the defaults, and I like it more than the C++ alternatives.

What type of project actually uses C++ 23 modules in real life? What kind of toolchain enables that? When I worked on Chromium, they were indefinitely in the "maybe in 5-10 years the tooling will be ready" camp.

The tooling people have - as of about a year ago said they are ready. Now everyone who considers themselves early adopters is using then. Most are waiting for the early adopters to figure out what the best practices are so we don't make a mess

What early adopters are using them? Because my impression is the tooling still isn’t there

People using Visual C++ with MSBuild, or clang with CMake and ninja.

CMake says they are there. Other tools mostly are not.

Nobody has said they are using them in anything important, but hopefully that is coming.

CMake has support for named modules but does not support header units or C++23 module features such as import std;

Import std has been there for a while but is experimental until gcc supports it. Gcc just for that support so it should be mainline soon.

C++20 is pretty common and gives you already a pretty nice engineering experience.

YC startup. Toolchain was Clang and sh.

Chromium is gonna be more conservative than that for sure.

Looked up what C++23 Modules were and I must say I was not let down.

>I'm anxious for Herb Sutter's CPP2/CPPFront to become a standard.

Why? It doesn't remove complexity, it (partially) hides it and makes the whole thing even more complex.

I enjoy the syntax and the defaults he picked, and it matches the way I use C++. I prefer it to all the C/C++ alternatives.