4 ms·
I think people who are invested in C++ now won't suddenly stop being invested in it by the time C++17 rolls around.
by ben0x539 12y ago
I think people who are invested in C++ now won't suddenly stop being invested in it by the time C++17 rolls around.
- pjmlp 12y agoMany people are invested in C++, because in the last 20 years there was an investment in VM based runtimes, effectively leaving C and C++ as the only to go languages if one was looking for ahead of time compilation[0]. Now with Java and .NET upcoming adoption of ahead of time compilation to native code in the next versions. Additionally with other languages like D, Rust, Go, Swift, Ada, Haskell, OCaml fighting for a place at the Sun. There will be lots of options for those looking into languages with support for ahead-of-time compilation to native code in their reference implementations. Thus pushing C++ deeper into the OS realm, while at the same time giving to those people other options to look for. Hence my remark. [0] There were other options, but they were largely ignored by the mainstream.
- ben0x539 12y agoI agree, and am cautiously optimistic that people will have more options in or close to C++'s niche in the future. My comment was made with regards to the (surely significant?) market share of people who opted for C++ in the past and are stuck with it for better or worse. But even just considering new projects, I'd expect that C++'s inertia in terms of reputation, ecosystem and people's skillset/experience means that C++17 or even later will have plenty of time to measure up against the competition.
- pjmlp 12y agoSure! Myself I always liked it, just prefer to explore other options as well. You are right, though.
- coliveira 12y agoThe problem is not just ahead of time compilation. This has been available for a long time on Pascal, OCaml, Ada, and even Lisp. C++ offers access to lower level programming constructs that makes it very efficient to program things like games, numeric algorithms, device drivers, desktop applications, and many more areas that depend on these C++ features.
- pjmlp 12y agoApparently you didn't read my footnote, those are some of the languages ignored by the mainstream. Funny that you list Ada and then ignore it offers the same features for systems programming as C++.
- lomnakkus 12y agoThe thing is: If you use a non-C/C++ language you'll inevitably have to interface with some C or C++ code (your OS API, whether that be POSIXish or whatever.). There can be a lot of friction/impedance mismatch at this point, especially if your language uses novel ways of managing resources and/or memory. I'm guessing this is why a lot of Application-level GUI code still gets written in C/C++, e.g. in Qt, KDE or GNOME. "Worse is Better" is Worse in the long run, I guess.