3 ms·
It took me a while to understand what C++ was: a quest for the highest level semantics possible with the lowest performance overhead. It is a quest started a lo
by Iv 5y ago
It took me a while to understand what C++ was: a quest for the highest level semantics possible with the lowest performance overhead. It is a quest started a long time ago with a lot of dead ends and circumvolutions.
The quest is still valid but really, the complexity that C++ has given birth to is not worth it anymore. Other languages restarted from a blank state and are probably better bets. I almost switched to D years ago, for a while it looked like Go was going to take over but finally Rust seems to be it. My current work forced me to get into rust, and I don't think I'll go back to C++ anytime soon.
It was a fun ride. So long and thanks for the fish.
- throwaway17_17 5y agoThat is an interesting take, I don’t really disagree (regarding the high-level semantics/lowest overhead). I do question the use of ‘highest’ as the qualifier for the semantic level, but certainly would support a claim that the goal was some indeterminate high with regards to the semantic level. Even at the inception of C++ as something different than C with classes, there were at least a few languages with a higher semantic level than where C++ is today. Although I do not think there was any then current strategy for making those languages as low overhead as C in practice. So as time has progressed and the cruft and complexity have built up I think they have now decided to find the highest level they can reach, while maintaining backwards compatibility and the low overhead requirements. I am inclined to agree that a green field language is probably a better bet for achieving the goal, but I am not sold on any of the current contenders. So I still plod along doing my performance sensitive development in stripped down C++ and plug away at my pet language project.
- jcelerier 5y ago> It took me a while to understand what C++ was: a quest for the highest level semantics possible with the lowest performance overhead. I find it interesting that it took you a "while" even though Stroustrup was already defining like that before C++98: https://books.google.fr/books?id=hS9mDwAAQBAJ&pg=PT151&lpg=PT151&dq=%22+room+for+a+lower-level+language%22&source=bl&ots=xOhk2l17Po&sig=ACfU3U1rtDkXb3n7KkpSDmlAUcWFBNCuAQ&hl=fr&sa=X&ved=2ahUKEwiigs6JtJvwAhWlsXEKHRCFAsgQ6AEwCHoECAgQAw#v=onepage&q=%22%20room%20for%20a%20lower-level%20language%22&f=false https://books.google.fr/books?id=hS9mDwAAQBAJ&pg=PT151&lpg=P...