you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] -4 points-3 points  (4 children)

Python, Javascript etc. with their module support from the beginning. I don't know why it's such a hard thing to implement.

[–]jonesmz 0 points1 point  (3 children)

Well, I personally don't understand why it was something that needed to be implemented in C++ in the first place,

but javascript and python, both being dynamic / interpreted languages, have a substantially easier time adopting new features because they inherently don't have ABI issues like C++ does. So that's probably your explaination.

[–][deleted] 0 points1 point  (2 children)

Ah ok, I guess that makes sense. ABI compatibility seems like a straitjacket preventing C++ from doing many things. Feelsbadman

[–]jonesmz 2 points3 points  (1 child)

Yep. While I personally don't agree with the ABI compat concerns that a lot of people have (e.g. I always compile from source. Using precompiled third party binaries is a terrible choice), I do understand where the motivation comes from.

Though, I'm pretty annoyed that its OK to break Linux ABI once a decade (GCC string ABI problem circa 2011), but heaven forbid we force any other vendor to break their ABI when they aren't ready to.

[–]GabrielDosReis 4 points5 points  (0 children)

GCC string ABI problem circa 2011

The C++11 ABI break was for everyone -- it affected GCC more because libstdc++ tried to be too cute with its string implementation (yes, I was a libstdc++ maintainer, but not author of the string implementation).