r/cpp 7d ago

cpp2 (cppfront) is over?

I haven't used cpp2 (cppfront) much, but I like the idea of it: consistent syntax, consistency of meta-programming (which is done in C++ too, I believe). Herb Sutter presented cpp2 (cppfront) as an experiment. He did not encourage other people to bet on it, exactly. And there hasn't been much activity since 2022. Is the experiment over?

EDIT: Herb's answer is buried deep in the comment section: https://www.reddit.com/r/cpp/comments/1uxkglj/comment/oy06cxw/

65 Upvotes

112 comments sorted by

View all comments

47

u/YangZang 7d ago

14

u/Wh00ster 7d ago

The hooplah of the original announcement seems odd framed against that answer. Or maybe the community just overhyped it.

27

u/13steinj 7d ago

It's hard to say all this without coming off as if I hate the guy, but here goes:

Herb has fairly inconsistently has claimed how "serious" cppfront was over the years.

I have my conjecture on why, which I'd rather not share other than I do not envy the position he is in and the expectations people have of his work. There are people, to this day, that will promote an idea from Bjarne or Herb with nothing but an appeal to authority, an authority of which I would no longer say exists in the same way it did pre-C++11. My opinion of Herb, the way he operates, and his goals, has changed dramatically over the past decade, though mostly far more positive now than my initial view. Being "the convener" has a lot of assumptions people make about you and what you have to do thrust upon you.

I believe the reality of this situation in particular is the existence of cpp2 combined with who it came from is a bit of a walking contradiction.

I cannot think of any "successor language", far less any that claims the intent is to be a successor, even loosely, that has tangibly materialized as one.

  • Carbon => development hell
  • Circle => adoption deadlock
  • cpp2 => fairly specific codegen framework. How much is needed with Reflection?
  • Go, Rust, Zig, Odin, all appear to be more of a successor to C

However, I think even as far as last year's cppcon, Herb uses cpp2 examples in his slides. I think at this point this is actively counterproductive.

I also would not be surprised if there is some kind of IP issue, and he has since switched jobs. I do not think this is likely, but it would track with a lot of rumours about Microsoft and their approach to software internally.

1

u/pjmlp 7d ago

Carbon just announced a roadmap at NDC Toronto 2026, unfortunely the video is not yet available.

https://ndctoronto.com/agenda/carbon-graduating-from-the-experiment/be09a27e1d46

However there is now information about the safety roadmap.

https://mastodon.social/@[email protected]/116898796459646367

In any case, Carbon is for Google only purposes, I don't know why it keeps being repeated it is there for everyone else.

One thing people miss when discussing C++'s relevance in systems programming, is that C is still around, many managed language runtimes still use C, some domains it still owns the crown over C++, and a successor to C, is good enough for many people, for example most folks in the games industry that lost interest where C++ is going since C++14, or OS kernel development.

2

u/DuranteA 3d ago

for example most folks in the games industry that lost interest where C++ is going

I think I've corrected exactly this already years ago in a post from you. It's still as untrue now as it was back then.

"Most folks" in the games industry (taking this to mean programmers, of course) use either C++ or C# daily, and it's not even remotely close. All the commonly referenced C or C++ "successor languages" are a blip on the radar at best.

Also, specifically in terms of "where C++ is going": reflection is one of the most interesting improvements to C++ particularly from a game development perspective in ages. The biggest issue there is just the amount of time it will take until you can actually ship with it.

0

u/pjmlp 3d ago

So you are calling liars to the folks on the panel?

2026 EuroLLVM - Clang and LLVM in Modern Gaming Platforms

Pity that there isn't a single devkit with reflection support, across all major games platforms.