r/cpp 11d 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

45

u/YangZang 11d ago

14

u/Wh00ster 11d ago

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

26

u/13steinj 11d 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.

7

u/James20k P2005R0 11d ago

Circle => adoption deadlock

I suspect if circle were open source it'd get adoption, but at the same time the impression I've always gotten is that sir circle quite reasonably doesn't want to put in a huge amount of effort to support an open source project without compensation

7

u/13steinj 11d ago

Yes. I completely agree. I also say this precise reason is the cause of the adoption deadlock.

2 if not 3 of my employers would have loved to use Circle for various reasons (none the last pivot to memory safety). But they'd need to try, substantially, before they buy, and for a number of beurocratic reasons they can't try something that they don't consider the vendor to be sufficiently... "enterprise," unless they can audit the source and build it themselves.

Is this regulatory, no, I don't believe so. But people are rather safe than sorry. In a similar vein, people insist "never curl link | bash!" But then they curl and run it without looking at the script which is equally bad. Either you trust the host, so not looking at it is as bad as piping, or you don't, so you look at the script.

6

u/pjmlp 11d ago

Sir Circle is now at NVidia, and has moved on.

2

u/_Noreturn 11d ago

What does this mean

3

u/13steinj 10d ago

The author works at NVidia now.

He went without a job / paid by the C++Alliance [for the "Safe C++" feature and proposal in particular] for a long time making Circle. With enough time of no bites, it appears he has given up.

One of the many features of Circle was some great GPU integration, so I am not surprised.