this post was submitted on 18 Apr 2026
0 points (50.0% liked)
Programming
26752 readers
286 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Ease of adoption, if I'm not mistaken (so I was told 20-ish years ago when I started learning C++). Think back to the early/mid '90s - there was a lot of existing C code out there back then, people really didn't want to throw it away but had few options if they wanted to use something else. C compatibility offered a way for large companies to incrementally adopt C++. All you had to do was change your compiler and your existing C code would compile, and you could write new stuff in C++. In the mean time, other languages could only leverage that existing code by using message passing or FFI-like frameworks. For example, you would have to use JNI if you were writing Java I think - maybe there were other options, but it was a big pain to deal with at the time, especially since tooling was probably not as polished back then.
Maybe it's not as much of an issue today, but they have to maintain compatibility with earlier versions, so while it helped adoption a lot, it also is a big challenge for the language and its ability to move forward.