Hacker News new | ask | show | jobs
by fizx 4629 days ago
"There are only two kinds of languages: the ones people complain about and the ones nobody uses." -- Bjarne Stroustrup
1 comments

Bjarne Stroustrup has no right of saying anything regarding language implementation and validity of users complaints.
This (admittedly fake) interview with Bjarne always makes me smile: http://artlung.com/smorgasborg/Invention%5Fof%5FCplusplus.sh...
It's a shame it focuses on OO as the main problem with C++.
I think it's targeted at non-GUI developers. I'd like to see a purely functional GUI framework.
Could you substantiate your statement please.

I find that he is in a good position to do so because C++ evolved based on feedback from people using it and he was responsible for the first version(s).

Sure.

Nowadays the consensus is that C++ introduced more problems into the industry than it solved. Moreover it keeps introducing more and more problems with each new revision.

In this light his statement is merely an attack upon his critics e.g. "Haters gonna hate..." while ignoring the possibility that criticism of "his" programming language is well founded.

Sure people bitch about every language sometimes. Hell I bitch about languages I use now and then, but I keep using them.

While systems programmers are fleeing from C++ back to C(!!!) and to newer languages like Go (for which the core design principle could be described as "Not C++").

To me his statement sound like a chronic alcoholic saying "There are only bad kids and kids you don't have."

> While systems programmers are fleeing from C++ back to C ...

Really?

GCC is now developed in C++.

Clang is developed in C++.

Mac OS X I/O Kit makes use of a C++'s subset.

Windows drivers can be done in C++ since Windows Driver Kit 8, while most new native APIs since Vista are COM based. With Microsoft only supporting enough C99 to comply with C++11/14, while helping porting FOSS C projects to Windows.

OS/400, BeOS and Symbian make use of C++ on the kernel.

Many new NoSQL databases are done in C++.

I see the C usage actually decreasing.

"While systems programmers are fleeing from C++ back to C(!!!)"

Example? I know of new developments in systems programming written in C++ (LLVM, clang, WebKit, FireFox (or did that start in C?)), I know of some that moved from C to C++ (gcc, maybe FireFox), I know of new developments in C (Linux, git), but I not aware of any system going from C++ to C. They may exist, but I would need more than a few examples to be convinced of the existence of a general trend.

Example: microcontrollers and embedded systems.

Some time ago there was a shift towards c++,but a large percent are returning back to c.

That's what i recall from surveys from UBM, the company that runs eetimes.com .

Looking at http://images.content.ubmtechelectronics.com/Web/UBMTechElec..., I can see where that argument comes from. Looking solely at the C++ data across the years, slides 20 and 21 can be seen as indicators that C++ peaked in 2011. If that's the case, however, C peaked in 2012.

Also, for C, there seem to be fewer 'next' projects than 'current' projects, while for C++ those numbers are about equal.

Extrapolating like mad on almost no data, one could argue that C is on the way out in favour of Python, Java, and C#.

.Net is on the decline, though, so there either must be tremendous growth in the use of Mono in embedded software, or that data must be taken with a grain of salt. My money is on the latter, but surprise me.

I'm a systems guy and I love C for its simplicity. There certain problem domains which C++ is better suited for, but everything being equal, I'll chose C every time for its simplicity (don't give me the whole "shoot your foot off" argument. I know, but this is not much of an issue for experienced and competent C devs)
He didn't say anything about the validity of complaints.
In so many words he is saying:

"People complain about my language, because they use it. If it wasn't good (enough) they would not have used it."

Thus the complaints are relegated from feedback to proof that the choices made were right thus invalidating complaints.

So by not changing X they are automatically and implicitly disagreeing with any complaints referring to X? You're reaching.

EDIT: In case my point wasn't apparent, the language is under active development by an open, international standardisation committee, of which Stroustrup is an active and prominent member. They are well aware of the complaints, but the problem is that every change involves a tradeoff, and sometimes that tradeoff is just not worth it.