upvote
I don’t really like much about C++ anymore, but I still enjoy reading C++ articles and listening to C++ podcasts, and I would consider it beautiful. Oftentimes the things I dislike about it are also the beautiful things. The term “beautiful mess” seems appropriate.

It’s a bit like a well-kept Victorian home. The amount of work, money, and dealing with discomfort that goes into maintaining one isn’t something I really want to experience for myself. But the amount of skill and craftsmanship that it takes to preserve one is still impressive, and I have to appreciate the respect for history and the care that goes into balancing it with modern concerns.

And talking to people who do live the life is always a great learning experience.

reply
> I would consider it beautiful.

If there's something that C++ actually lacks, that's the elegance, grace and beauty. The rest, it's all already there or will be there shortly :)

reply
Think of it like a rainforest ecosystem. Very complex and tangled, even fragile. But it’s the tangled fragile complexity that makes it interesting.
reply
I find C++ beautiful only when I come across simple, powerful things that use the minimal amount of advanced language features possible
reply
The problem with that is best described by Antoine de Sain-Exupery's saying "perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away." I guess the same goes for elegance and grace...
reply
C++ is in the transitional phase where major bad things are being taken away very satisfactorily, usually by providing a simpler and more general replacement (for example, auto instead of long and pointless type declarations or modern initialization protecting against implicit conversions and surprise constructor overloads), but most progress of elegance and grace come from new features that enable something traditionally terrible or impossible (for example the gradual generalization of templates, culminating with concepts, the gradual extension of constexpr, consteval etc, and the new reflection).
reply
Oh, have they finally started to remove features?
reply
> I would consider it beautiful

I had the same misunderstanding before I get to know CS. that was 30 years ago.

reply
Beauty in C++ may be most similar to lipstick on a pig, but we try our best.
reply
It's more like arranging pigs in beautiful patterns. If you don't look very closely, you don't see the pigs.
reply
I admire you guy keep trying.

I'm also glad I do not write C++ on the daily anymore: luckily my software does not need that kind of performance characteristics.

reply
I still reach for C++ on the backend. Honestly, with all its warts, I like it overall.

You can write pretty fast and reasonable code nowadays.

reply
Yet I imagine your software depends on C++.

Either directly on top of a runtime/compiler written in C++, or as indirect dependency on a C++ compiler toolchain.

reply
I find it hard to see a language as beautiful that’s grown too complex for a single person to hold a complete mental model of.

I used to think that was a personal limitation, until I saw an interview with Bjarne explaining that he used to understand all of it but at this point it’s too big, no one can anymore.

reply
C++ is certainly a leader among the least feasible, but it's far from alone.
reply