Linked by Thom Holwerda on Mon 3rd Sep 2012 20:46 UTC, submitted by MOS6510
General Development I like this one: "By definition, a program is an entity that is run by the computer. It talks directly to the CPU and the OS. Code that does not talk directly to the CPU and the OS, but is instead run by some other program that does talk directly to the CPU and the OS, is not a program; it's a script." Here's the other eleven.
Permalink for comment 533837
To read all comments associated with this story, please click here.
RE[5]: C++
by satsujinka on Tue 4th Sep 2012 17:10 UTC in reply to "RE[4]: C++"
satsujinka
Member since:
2010-03-11

A better solution is to group styles into different languages.

That way you have clear definitions of what features to expect. If you have two devs who say "I know X", it means you can be reasonably sure that they can check each other's work.

Additionally, say we have a section of code that should be pure (functional.) We can do that in C++, but there's no guarantee that someone won't come by and make it impure. If we instead require a pure language, then this issue never comes up. The restrictions of each language give you guarantees about the characteristics of the code, making it easier to reason about.

If you have every feature available all the time, then the code quickly and easily becomes more complicated than it has any right to be. You have to manually restrain yourself with C++; you simply don't have to do that with simpler languages.

Now, I'll admit that cross-talk between languages is currently kind of a pain. Most languages really only interface well with C... and even then not necessarily well. So maybe it makes sense to use C++, for now, but that doesn't mean that C++ isn't an issue.

Reply Parent Score: 2