3 ms·
> When comparing how Go changes with how C++ changes, one gets renewed appreciation for how good of a job the C++ designers are doing. We must live in a differ
by twsted 4y ago
> When comparing how Go changes with how C++ changes, one gets renewed appreciation for how good of a job the C++ designers are doing.
We must live in a different world...
- insanitybit 4y agoI get where you're coming from but consider that C++ has added an obscene number of features and it somehow all works. You can say "that's bad that they added tons of features" and I'll agree with you, but the fact that they've been able to do so is impressive and speaks to a powerful design process.
- knorker 4y agoYou may not like the language, but it's managed to grow with a consistent story. Yes, there have been some missteps, like auto_ptr and vector<bool>, but it does work together. At worst you have to write small adapters because there's no equivalent of smatch for string_view, etc... But compare this to Go, where contexts, error wrapping, generics, uh... error wrapping again (this multierror thing), horrible conditional build hacks, etc... C++ is a big and complex language. But it's consistent. Go is a small simple language with lots of ill-fitting extensions added as core language features and standard library bolted all around it. In other words: any language can be critiqued, and it often helps by showing that a deficiency is not unavoidable, by showing how another language has avoided it.
- twsted 4y agoI'm saying this after 20 years using C++, from AT&T CFront onwards, all the GotW, years of Boost posts, every Modern, Effective and Exceptional book read. I've loved C++, but now it is complex even with my experience.
- knorker 4y agoAgain, I'm not saying C++ is not complex. I'm saying the complex pieces fit. And that Go has the problem that the pieces don't fit together. (and that this is because it has a bad foundation) I have more than 20 years of C++ experience. Maybe more than 25. I'm surprised you used CFront 20 years ago. Is this like how in my head the beginning of the Unix epoch was "about 30 years ago" when actually it's almost 53?
- twsted 4y agoJust not counting the last ten years not using directly C++, only following its development for affection ;)