Home Upgrade Search Memberlist Extras Hacker Tools Award Goals Help Wiki Contact

C 

So What Do Some Computer Scientist Think C and C++?

(Sep 12, 2015 10:42 AM)6577657534735 Wrote:  Yeah. The vast majority of computers in the world are embedded systems and they run exclusively on C and in some cases C++. Everyone forgets this

I think you mean they are programmed with C.
(Sep 8, 2015 10:00 AM)bbbysmth Wrote:  Maybe you could also explain why long time industry supporters of C++ are migrating away from it(C++)?

You'd be better off looking up a specific supporter yourself, I'm sure there's plenty explanation.

Clearly C++ has it's issues, as ANY language does. The pointless argument of this thread is that C/C++ aren't used/useful, which just isn't the case. Even in web development this isn't true (backend).
EX: Facebook Folly
https://github.com/facebook/folly
(Sep 12, 2015 08:03 PM)Almost Wrote:  Clearly C++ has it's issues, as ANY language does...

But C++'s has serious issues to the bottom line of a project and that counts for most companies that program.

The choice is to produce really fast software which is 'way' more buggy and takes 'way' longer to program or produce software which is slightly slower and is less buggy and takes less time to produce. What do you think the majority of companies are going to choose?

Hardware is cheap and programmers are expensive. You do the math.
(Sep 12, 2015 10:07 PM)g4143 Wrote:  But C++'s has serious issues to the bottom line of a project and that counts for most companies that program.

The choice is to produce really fast software which is 'way' more buggy and takes 'way' longer to program or produce software which is slightly slower and is less buggy and takes less time to produce. What do you think the majority of companies are going to choose?

Hardware is cheap and programmers are expensive. You do the math.

Since when is C++ "buggy"? Also, C++ hasn't seen any drops in ranking in terms of being in demand or usage.
(Sep 12, 2015 10:44 PM)RDCA Wrote:  Since when is C++ "buggy"? Also, C++ hasn't seen any drops in ranking in terms of being in demand or usage.

That's because its becoming an academic language. A language for teaching purposes.

Since when is C++ code buggy? You are joking right? C++ is everything you shouldn't do rolled up into one language.
(Sep 12, 2015 10:47 PM)g4143 Wrote:  That's because its becoming an academic language. A language for teaching purposes.

Since when is C++ code buggy? You are joking right? C++ is everything you shouldn't do rolled up into one language.

No, lots of these studies are based off of github projects and company demands.
C++ isn't buggy, implementation is buggy; the language just has a large learning curve.
(Sep 12, 2015 10:52 PM)RDCA Wrote:  No, lots of these studies are based off of github projects and company demands.
C++ isn't buggy, implementation is buggy; the language just has a large learning curve.

But with that argument you should be using straight machine language. This is the problem with the C++ fanboys and their language. It(C++) can never be wrong.

But many, many, many industry experts and leaders are stepping away from C++ because its an impractical language for most situations.
(Sep 12, 2015 11:01 PM)g4143 Wrote:  But with that argument you should be using straight machine language. This is the problem with the C++ fanboys and their language. It(C++) can never be wrong.

But many, many, many industry experts and leaders are stepping away from C++ because its an impractical language for most situations.

What? How? There are very few github repos with straight assembly.... most companies aren't demanding assembly programmers. Also, lel, instead of calling me a fanboi actually dispute what I'm saying.

Then explain why it hasn't dropped in the rankings, and C is becoming even more wanted. People have been saying C and C++ are outdated for years and years.
(Sep 12, 2015 10:07 PM)g4143 Wrote:  But C++'s has serious issues to the bottom line of a project and that counts for most companies that program.

The choice is to produce really fast software which is 'way' more buggy and takes 'way' longer to program or produce software which is slightly slower and is less buggy and takes less time to produce. What do you think the majority of companies are going to choose?

Hardware is cheap and programmers are expensive. You do the math.

(Sep 12, 2015 10:47 PM)g4143 Wrote:  That's because its becoming an academic language. A language for teaching purposes.

Since when is C++ code buggy? You are joking right? C++ is everything you shouldn't do rolled up into one language.

My god, how biased and misinformed you've become. Clearly as I have mentioned before you have never actually worked in the industry... :/ You read one article or view a youtube video and your point of view becomes immutable.

You still can't comprehend that each language has its uses? I can tell you that the robotics engineers in Japan aren't using PHP as their back-end... And I'm also pretty sure they care more about performance over development speed. Furthermore, do you not realize that you can mix languages? You can write the core part of some project in ASM/C/C++, and have the front-end written in C# for instance. There's a reason why some people do this too -- each language has its purpose.
Getting Started: C/C++
[C/C++/.NET/x86 ASM - Automation Programmer]
Bad programmers write bad C++ because C++ is a hard language to master. I'm sure as fuck no master, there are many people on here who know more about it than me

Many companies choose a subset of C++ to use and very rigorously test all code. Compile with the strictest settings on every possible platform it will be deployed on, heavy use of static code analysis and a healthy mix of things like valgrind to find weird memory things.

No exceptions
All explicit constructors
No raw pointers (utilize RAII)
etc.

Do these things and you can prevent yourself from writing bad C++ code and the gains are worth it.

Some companies solve low level problems. My last summer job had a 90% C++ codebase and they were a serious company paying big money, quit pretending everything is done in PHP and boomple.async.js.io.framework.v2.0 nowadays
(Sep 12, 2015 11:11 PM)RDCA Wrote:  What? How? There are very few github repos with straight assembly.... most companies aren't demanding assembly programmers. Also, lel, instead of calling me a fanboi actually dispute what I'm saying.

Then explain why it hasn't dropped in the rankings, and C is becoming even more wanted. People have been saying C and C++ are outdated for years and years.

So is the industry's trend to move away from the primitive hardware interactions to higher level abstractions or is it to move away from higher level abstractions to primitive hardware interactions?

How do you see the trend for the industry?
(Sep 13, 2015 01:00 AM)g4143 Wrote:  So is the industry's trend to move away from the primitive hardware interactions to higher level abstractions or is it to move away from higher level abstractions to primitive hardware interactions?

How do you see the trend for the industry?

Any move towards abstraction and away from the hardware requires people to build the foundation between the hardware and that abstraction. The more abstraction there is, the more foundation there must be

"The industry is moving towards X language"

Okay well X language have a compiler implemented along with a massive suite of tools to enable this language to even be used. All of these will continue to be supported forever and all of the hardware these tools run on will need to be supported forever

Low level code never just becomes unnecessary to work with again. The more you build on top of it the more it's pushed and stress tested and the more that low level infrastructure must be maintained or replaced.
(Sep 12, 2015 10:47 PM)g4143 Wrote:  C++ is everything you shouldn't do rolled up into one language.

I will quote you frequently ;-)

My knowledge of C and, worse, C++ is limited. What I note, though, is that, whenever you ask, five C++ programmers will propose seven entirely different approaches for seemingly very simple problems, such as "open that textfile and tell me in which lines the word 'whatever' appears". And each of the seven solutions is a lot more complicated and a lot slower than the one solution that my assembler macro library provides.

C++ has become a behemoth, with multiple competing libraries. Every coder has to find his own way, and specialises on certain things, for example: QT (which I don't even touch, the bloat factor just puts me off, and on Windows it seems a joke).

What complicates things is that the desktop and notebook market, which just a few years ago was a homogeneous environment with a 90%+ share of Windows, is no longer the dominating one. Nothing has changed for desktops & notebooks, but when looking at all devices, Android has half of it, and iOS/OS X is #3 slightly behind Windows. So cross platform development is back on stage, which is 1. a good argument for C, a highly standardised language, and 2. explains why assembly ranks so high on the TIOBE index, before VB, Pascal, Delphi, Swift, COBOL.

The only reasonable argument FOR C++ I can see is "it's so complicated that it serves to exclude an army of hobby coders from the market". Millions of lines of code, for example, have been written by engineers in small and medium enterprises, in VB and VBA. No chance to see these engineers do the same in C++ - and from the point of view "I have to defend my profession", that is certainly a valid argument to declare C++ the most professional language on Earth ;-)
How much error checking does your assembler macro library provide. Buffered reading and writing? An easy uniform interface regardless of data structure used?

A lot of the time these apples to elephants benchmark comparisons will be comparing when the C++ standard library's functions are too generalized and a more to-the-point solution would suffice. But in those cases specially written C++ code would work fine too and assembly isn't actually needed. The assembly would be better than the generalized C++ standard library solution but specially written C++ would be just as good as the assembly
This thread is great. I mean it's full of shit but great never the less. It's seriously made me doubt my position as a CS student. Heavily considering moving over to CE before it's too late.

I also think it's time to work on my C++. 🤝


Possibly Related Threads...
Thread / Author Replies Views Last Post
by SiLent55Sep 3, 2026 11:56 AM 2 84 Sep 3, 2026 11:56 AM
Last Post: hackathonuk