4 ms·
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
by whstl 5mo ago
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.
- domenicd 5mo agoWhat 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.
- whstl 5mo agoYC startup. Toolchain was Clang and sh. Chromium is gonna be more conservative than that for sure.
- bluGill 5mo agoThe 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
- maccard 5mo agoWhat early adopters are using them? Because my impression is the tooling still isn’t there
- bluGill 5mo agoCMake says they are there. Other tools mostly are not. Nobody has said they are using them in anything important, but hopefully that is coming.
- Maxatar 5mo agoCMake has support for named modules but does not support header units or C++23 module features such as import std;
- bluGill 5mo agoImport 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.
- maccard 5mo agoWe are now getting close to the distance between c++03 and C++11 for making basic modules work on main line toolchains and build systems. That’s absolutely wild.
- pjmlp 5mo agoPeople using Visual C++ with MSBuild, or clang with CMake and ninja.
- maccard 5mo agoIt’s been 6 months but last time I checked neither IntelliSense nor clangd worked with modules. The build tools have been just about functional for a while though, you’re right.
- pjmlp 5mo agoYeah, Intelisense is a bummer, but you really need VS proper, nor VSCode, which I assume given the clangd reference. Whereas one kind of works (VS), there is apparently no work going on VSCode Intelisense, ticket is stalled since January, and the promised announcement never came up.
- bulbar 5mo agoC++20 is pretty common and gives you already a pretty nice engineering experience.
- buovjaga 5mo agoProjects: https://arewemodulesyet.org/projects/ https://arewemodulesyet.org/projects/ Tools: https://arewemodulesyet.org/tools/ https://arewemodulesyet.org/tools/
- avadodin 5mo agoLooked up what C++23 Modules were and I must say I was not let down.
- tialaramex 5mo agoIn 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/ https://github.com/hsutter/cppfront/commits/main/
- whstl 5mo agoThat's a shame! It's a lovely language.
- Mond_ 5mo agoIs 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).
- whstl 5mo agoI personally really like the syntax and the defaults, and I like it more than the C++ alternatives.
- drysine 5mo ago>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.
- whstl 5mo agoI 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.