Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

The Unreasonable Effectiveness of C

Required Snark (1702878) writes | about 2 years ago

0

Required Snark (1702878) writes "Let the Language Wars Begin (Again). Damian Katz of CouchDB published a blog post entitled "The Unreasonable Effectiveness of C".

"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."

Among it's other virtues, he points out that it is a fantastic high level language that "makes it easy to reason about high level algorithms and low level hardware at the same time." It offers the best speed, debugging environment, consistency of execution, a uniform ABI, compatibility with other languages, and a fast build-test-debug cycle. It has many flaws, but as Katz says "Its flaws are very very well known, and this is a virtue. All languages and implementations have gotchas and hangups. C is just far more upfront about it."

So, Slashdot, is everything old new again?"

Link to Original Source

cancel ×

0 comments

Sorry! There are no comments related to the filter you selected.

Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?