Linked by David Adams on Sat 11th Oct 2008 16:48 UTC, submitted by IndigoJo
General Development Eric Raymond is working on an essay, putatively titled "Why C++ Is Not My Favorite Programming Language". In his announcement, he calls it "an overcomplexity generator", "bloated, obfuscated, unwieldy, rigid, and brittle", and alleges that these characteristics appear in C++ applications also. I contend that many of the complaints about C++ are petty or are aimed at specific libraries or poor documentation and that many of the features commonly regarded as unnecessary (and excluded from intended replacements) are, in fact, highly useful. C++: the Ugly Useful Programming Language
Thread beginning with comment 333338
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: Nothing wrong with it
by baadger on Sat 11th Oct 2008 22:12 UTC in reply to "Nothing wrong with it"
baadger
Member since:
2006-08-29

Templates and streams (and the STL containers) are 2 of my favourite features. The fact that you don't use them is fine with me and it also highlights just what is special about C++.

In C++ you get all the _options_ and you can code the way you prefer without having a paradigm shoved down your throat.

Edited 2008-10-11 22:15 UTC

Reply Parent Score: 6

RE[2]: Nothing wrong with it
by bnolsen on Sun 12th Oct 2008 05:28 in reply to "RE: Nothing wrong with it"
bnolsen Member since:
2006-01-06

Streams are horrific. Trying to handle internationalization of "grammar" concepts utterly breaks streams to hell, which is where they should go back to.

If anything STL's iterators & algorithms are extremely powerful, amazingly so. c++0x takes this power a step further with lambdas and other things.

The collections...well they are okay but definitely show how utterly obfuscated hackers can make their code. At least they aren't c macros.

Edited 2008-10-12 05:28 UTC

Reply Parent Score: 3

RE[2]: Nothing wrong with it
by Vanders on Sun 12th Oct 2008 10:27 in reply to "RE: Nothing wrong with it"
Vanders Member since:
2005-07-06

Templates are great, but template syntax is awful. I've also yet to see streams used effectively anywhere: after their first C++ "Hello world" most coders seem to just avoid them.

Reply Parent Score: 3

RE[3]: Nothing wrong with it
by IndigoJo on Sun 12th Oct 2008 11:51 in reply to "RE[2]: Nothing wrong with it"
IndigoJo Member since:
2005-07-06

Templates are great, but template syntax is awful. I've also yet to see streams used effectively anywhere: after their first C++ "Hello world" most coders seem to just avoid them.


Personally, I find the << syntax for putting data into a stream really logical and intuitive. The text or data to the right looks like it's being "sent to" the object on the left. The only problem is that a lot of teachers and books don't explain properly how this works - my teacher just said, "oh, it's an overloaded operator" and didn't tell me what that meant.

Reply Parent Score: 2