Linked by MOS6510 on Thu 10th Jan 2013 23:25 UTC
General Development "For years I've tried my damnedest to get away from C. Too simple, too many details to manage, too old and crufty, too low level. I've had intense and torrid love affairs with Java, C++, and Erlang. I've built things I'm proud of with all of them, and yet each has broken my heart. They've made promises they couldn't keep, created cultures that focus on the wrong things, and made devastating tradeoffs that eventually make you suffer painfully. And I keep crawling back to C."
Thread beginning with comment 548384
To read all comments associated with this story, please click here.
It's all about design
by gpsnoopy on Fri 11th Jan 2013 14:37 UTC
gpsnoopy
Member since:
2007-04-17

To me, someone who claims C is superior to any other language, is someone that has an unstructured mind when it comes to software design.

C allows you to just code and not worry about anything but the hacker-friendly part. Contrary to what appeals to programmers, that is a bad thing.

When you're coding in C, your software still has a design, even if the language does not expose it as explicitly. How many C programs around are actually pure OO design in disguise with self-implemented vtable? It's not because you don't use C++ that your program does not have "exceptions" (as in error handling logic). Etc.

Software design is hard. It's harder than just coding. How many programmers claim to know OO yet truely understand its core foundations? What about the Liskov substitution principle (just to name one).

C is absolutely appalling at dealing with modern software design problems. For example take concurrency (and I don't mean just spawning a couple of threads). Read the rationale behind Boost.Thread, C++11 and lambdas, or watch Herb Sutter videos about concurrency in C# and C++ to get a taste of the complexity of the problems.

C vs C++, C vs C#, C vs Java, C vs OO, etc is an old debate that is slowly dying as a newer generation of programmers is replacing the old guard. And funnily enough, the quality of software has massively improved over the years.

Edited 2013-01-11 14:38 UTC

Reply Score: -1

RE: It's all about design
by saso on Fri 11th Jan 2013 16:49 in reply to "It's all about design"
saso Member since:
2007-04-18

C vs C++, C vs C#, C vs Java, C vs OO, etc is an old debate that is slowly dying as a newer generation of programmers is replacing the old guard. And funnily enough, the quality of software has massively improved over the years.

And yet, C is the most popular language and has been on the rise for a few years (even displaced Java as the most popular language a few years back):
http://www.tiobe.com/content/paperinfo/tpci/index.html

So, what gives?

Reply Parent Score: 4

RE[2]: It's all about design
by gpsnoopy on Fri 11th Jan 2013 17:42 in reply to "RE: It's all about design"
gpsnoopy Member since:
2007-04-17

Demand for C has increased a few years ago due to the need for developers in the embedded market.

Otherwise I would take this link with a pinch of salt: Visual Basic 6 is almost more popular than C# and on its way to surpass it.

I think that a more interesting metric would be the languages used daily on our computers and on large applications.

Edited 2013-01-11 17:42 UTC

Reply Parent Score: 2

RE: It's all about design
by ebasconp on Fri 11th Jan 2013 21:36 in reply to "It's all about design"
ebasconp Member since:
2006-05-09

C vs C++, C vs C#, C vs Java, C vs OO, etc is an old debate that is slowly dying as a newer generation of programmers is replacing the old guard. And funnily enough, the quality of software has massively improved over the years.


So, are you claiming that is other programming language where the future OSes are being written? Something that the new guys can use instead of the old-good-for-nothing C?

Interesting!

Reply Parent Score: 3