I've got great respect for the guy, but he can be a bit off at times. As for what's wrong with C++, there is absolutely nothing wrong with C++. Fine language. However, RMS seems to be a Lisp'er, and they've sometimes got a chip on their shoulder about C++. The arguements boil down to:

From this they derive that C++ is inelegant. Of course, all of the above are true for English (and most other natural langauges as well!) and lot's of people find them far more elegant that mathematical notation...

PS> I have nothing against Lisp. Common Lisp is too hairy (almost as complex as Standard C++) for my taste, but some Lisp-like languages like Scheme are very elegant. It just pisses me off that some people can't realize that different people might not think the same way, and may not like the same languages. Maybe this is just bad personal experiences, but you see a level of arrogance in comp.lang.lisp that you don't see unless you wander into the pure math department at university...

Clean rocks. Its syntax is pure beauty, and you can write very efficient code in it. It even supports mutable data in a much simpler way than haskells monads, without losing the purity of functional programming languages.

I really hope that one day I will find a job doing functional programming. Until then, I am quite happy with C# and java.

C++ is a hack. But the beauty of Qt and KDE is that they use C++ in just the right way. C++ can be used very productively if you do not use every feature whenever it looks nice...

C++ is definitely inelegant. For instance, the static keyword means completely different things depending on context. Or, the syntax for declaring variables is different depending on whether they are function arguments or not.

C++ is an ugly language. It just so happens that C was just right for the majority of software at the time, and C++ was an easy upgrade path to "proper" OO programming.

You can't use natural languages as an excuse. We use them in virtually every communication with another person, it takes us at least ten years to master just one, and a lot of people never even master their native language. Plus, the problem domains for programming and general communication are far different.

From a synactical purity point of view, yes, it is inelegant. Nobody is claiming that there aren't lots of synactical warts on C++. However, syntax isn't really that important. Take the following example:

Now, you've got 10 lines of code vs 3. The C++ syntax, is admittedly horrible. It's more horrible than necessary because I've decided to highlight the worst syntax possible (compile-time STL metaprogramming) rather than a more common technique. However, is it really all that different? Most of it is just boiler-plate code. An experienced C++ programmer just mentally learns to filter it out. If you count "active lines" (ones that aren't just visual noise) there are 4 in the C++ version, and 3 in the Clean version. Given that C++ isn't even a functional programming language, and doesn't claim to be one, I'd say that's not too shabby.

You can't use natural languages as an excuse. We use them in virtually every communication with another person, it takes us at least ten years to master just one, and a lot of people never even master their native language.
>>>>>>
Sure, but a lot of people also master natural language but not mathematical language. The two styles are fundementally different and people who have different thinking patterns find different styles more natural to them.

Plus, the problem domains for programming and general communication are far different.
>>>>>>>>>>
The Smalltalk and Perl folks would disagree that natural language isn't an appropriate basis for a computer language. Perl 6, I think, is going to drive the functional programmers (and the Lisp people, which I've inaccurately grouped with functional programmers for brevity) absolutely mad. A computer language designed by a linguist rather than a mathematician. Fun!

Um, I'm on the C++ side here :) I specifically pointed out that I tried to use the worst C++ syntax possible (template syntax) instead of using a regular function. Heck, the template version doesn't even do the same thing (works only at compile time), but that's not the point. My point was that most of the syntax is just visual noise you quickly get used to. The fundemental language underneath is sound.

If I do recall, GCC had to become egcs first before that happened. And egcs won the battle of the forks by sheer technical excellence although it lost its name. Basically GCC became one of the best C++ compilers over Stallman's dead body. :-)

ABI issues. GCC 2.95 vs 3.0 vs 3.1.1 vs 3.2 vs Intel vs Borland etc. It'll take a while before everybody is switched to GCC 3.2.
But even then, there's no guarantee that they won't break compatibility again. The GCC team said they'll only break ABI again if it prevents them from compiling standards-compliant C++ code correctly, but there may still be a few of those bugs in g++ left.
Also, other C++ compilers don't support the C++ standard equally well.

In other words: there's nothing wrong with the language. There is something wrong with all the compilers however!

Nothing's wrong with C++. Its a great language, performant, powerful and "well-thought".
The realization of OO-ideas has been done well (better than in Java), but you have the procedural C subset for the lowest abstraction layers too.
Functional languages may have their domain in the implementation of algorithm, but the OO paradigm is superb for big programs & program frameworks (see the KDE framework for example), since it provides the necessary grade of abstraction.

LOL. The interview shows that he has already crossed the border
to the realm of insanity. I once worked in an old-people's home and
he reminds me a lot of the people living there. Once perhaps a genius
but now sliding the slippery slope, insisting on marginalia, GNU/Linux, Linux,
hell what a topic to discuss with the KDE team if you only have a bit of time.
The KDE guys seems to play nice just like you do with your Grandma.
And BTW not that I want to sound superficial: Is that he under that tuft of hair??
Perhaps he should get a shave soon or he will end up like Reinhold Messner
hunting yetis in the mountains.

But after reading this article you get the impression that he is out of this world. He seems to care more about terminology and dogmata than about free software and technology. And when he shows interest in technology, he seems to be stuck in his admittedly powerful but otherwise quite outdated Emacs stuff.

He did indeed create a vision that is fundamental, and wrote it down in form of a license. He started a software project that's the foundation of most of what we use these days. But he seems to be too far away from what is needed to make this thing mainstream among those who simply do not care for freedom of intellectual property yet.

That's what i've ever been waiting for; Are there now any efforts in realizing that project ? For me vim is the little editor i do all the config-file editing or so with, but i personally preferre emacs to vim if i have to do some coding; gideon and emacs would be the best i could imagine !

I think there are three reasons this has not been done, first, emacs is huge, you would have to pick which parts you wanted to implement. Second, it is written mostly in LISP, so the translation is not as easy. Third, most of the important characteristics of editing text in emacs can be simulated by setting up matchng key bindings.

Many other editors support code indenting. But they all operate different. Overall I like the way emacs works. But it is good to experiment, many editors have code indenting and syntax highlighting similar to emacs.

(Just some general impressions from the article and the comments above...)

Personally, I think Richard Stallman (alias RMS) is still one of the few people in this world to have some human, reasonable and rather coherent points of view (more talking about his political ideas than about the programmer, here); his vision of things on the GNU/Linux front might be a little exaggerated sometimes, but nevertheless it's good he's there to stimulate others, I think.

It's obvious that KDE (and graphical environments in general) isn't his "natural" element: this also explains why the tea meeting doesn't seem (looking at the photos) to be so addicting for either part. After all, people there were probably busy with other, more important things, anyway.

As for Stallman's "looks", considering that he's 50, I'd say that he looks quite damn good (at least 10 years younger!). Personally, I like the beard and long hair (having those myself, also): he reminds me a little of Bakunin and other great past thinkers... :-)

P.S.: Of course, the KDE + RMS/FSF relationship seems to be more one based on principles and theory; OTOH, a more practical and "fruitful" relationship could be the KDE + Apple one (I'm an OS X user, BTW): I really hope this will develop beyond KHTML/Safari, as OS X (IMHO) needs some of KDE's powerful features - and, conversely, KDE needs a little more of OS X's simplicity of use and elegance.

Actually I think it should be used for often, because it 'fixes' a common misconception among users. People think that 'Linux' is a platform. It is not, at least for GUI stuff. You can use any server on a "Linux machine", if it is compatible with a few standards of the LSB. There is only one de-facto c library and only one de-facto file system layout. But there is no such thing for the desktop. You could write for Linux+X11 or Linux+X11+Freedesktop.org, but this software would not integrate well into a Gnome or KDE desktop.
KDE+Gnu+Linux is a complete platform, and Gnome+Gnu+Linux is another one. If you target it would will have a pretty integrated system.