3 ms·
I'm not sure if that's true. While newer languages like python and ruby have taken the desktop app and web app arena by storm, most system/embedded level stuff
by jbermudes 16y ago
I'm not sure if that's true. While newer languages like python and ruby have taken the desktop app and web app arena by storm, most system/embedded level stuff is still done in C/C++. The usual arguments for this are that
A) The language gives you more control over memory management so you can squeeze as much performance out of every cycle.
B) There's a ton of existing libraries and legacy code in these languages. (Arguably one of the only reasons C++ gained any sort of traction was because of its advertised compatibility with C)
We've put up with the "shortcomings" of C (most programmers learned or think in OOP) and C++ (abundance of so-called gotchas and quirky areas of the language, Alan Kay's famous quote about C++'s OOP) and it still leaves much to be desired in my opinion. Java was an interesting development, but its GC disqualifies it for many systems or high-performance programming until recently. I don't have much experience with obj-c but it looks like another contender in this space as well.
There does seem to be a desire for a true "heir" to C as evidenced by D, Google's Go, and Mozilla's Rust. In fact, I'd be happy if someone just took the Java language and stripped out the GC instead of trying to restrict myself to a "safe" subset of C++.
I'm rooting for all of these projects because I'd love to see some of of the benefits of modern programming language theory brought to this sector of programming. This is an area where when there's competition everybody wins.