Beta

Slashdot: News for Nerds

×

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!

GNU Grep and Sed Maintainer Quits: RMS and FSF Harming GNU Project

Unknown Lamer posted about a year and a half ago | from the ulrich-drepper-wants-his-rant-back dept.

GNU is Not Unix 476

In a scathing rant posted to a GNU project mailing list, the maintainer of grep and sed announced that he was quitting the GNU project over technical and administrative disagreements. Chief among them: He believes RMS is detrimental to the project by slowing down technical innovation (the example used was RMS's distaste for C++, not exactly a strong point against RMS). Additionally, he noted that the FSF is not doing enough to help GNU "Projects such as gnash are bound to have constant funding problems despite being (and having been for years) in the FSF's list of high priority projects.". Finally: "Attaching the GNU label to one's program has absolutely no attractiveness anymore. People expect GNU to be as slow as an elephant, rather than as slick as a gazelle, and perhaps they are right. Projects such as LLVM achieve a great momentum by building on the slowness of GNU's decision processes, and companies such as Apple get praise even if they are only embracing these projects to avoid problems with GPLv3." The author is quick to note that he has no philosophical disagreements with GNU or the FSF.

cancel ×

476 comments

slightly off topic (0)

Presto Vivace (882157) | about a year and a half ago | (#42376797)

but this is my account of Richard Stallman's presentation to the Yorktown High School Computer Club [blogspot.com] for anyone who would be interested.

Re:slightly off topic (1, Interesting)

AliasMarlowe (1042386) | about a year and a half ago | (#42376843)

RMS is OK (not perfect, but OK).
For Paolo Bonzini, the grapes, they are sour...

Re:slightly off topic (1)

Anonymous Coward | about a year and a half ago | (#42377029)

Do you even understand what the expression "sour grapes" means? Because I am struggling mightily here to try and see how what you just said makes any sense at all.

Stallman is the original neckbeard of computing (2, Funny)

Anonymous Coward | about a year and a half ago | (#42376803)

Enough said.

Gnu/Anonymous FSF/Coward.

Re:Stallman is the original neckbeard of computing (5, Insightful)

greg1104 (461138) | about a year and a half ago | (#42377461)

No, that would be Thompson and Ritchie [wikipedia.org] . Stallman's neckbeard has spread horizontally to try and compete, but it's still no match for the epic reach into the neck Thompson's has in that shot.

grep -p (0)

Anonymous Coward | about a year and a half ago | (#42376813)

My question is why is there no grep -p, as there is in AIX. I love that flag.

Re:grep -p (0, Flamebait)

Anonymous Coward | about a year and a half ago | (#42376967)

lol AIX who uses that shit

Re:grep -p (3, Interesting)

kthreadd (1558445) | about a year and a half ago | (#42377113)

lol AIX who uses that shit

/me raises hand

It's not modern or "sexy", but it is incredibly stable.

Re:grep -p (1)

Anonymous Coward | about a year and a half ago | (#42377221)

A lot of US credit unions and community banks use AIX to run the core process. The Microsoft equivalent in the credit union world is Jack Henry and Associates Symitar core process which only runs on AIX.

Re:grep -p (4, Funny)

jedidiah (1196) | about a year and a half ago | (#42377301)

> lol AIX who uses that shit

Employers.

Re:grep -p (2)

Bill Dimm (463823) | about a year and a half ago | (#42377007)

This [gnu.org] gives some ways to accomplish the same thing.

Why does C++ matter? (4, Interesting)

PhrostyMcByte (589271) | about a year and a half ago | (#42376825)

the example used was RMS's distaste for C++, not exactly a strong point against RMS

So RMS doesn't like C++ -- this doesn't stop people who can use it properly from writing their projects in it, does it?

Does RMS actually have control over what GNU projects are implemented in? If so, I'd say that's quite a strong point against GNU -- throw the whole "right tool for the job" bit out the window because one dude doesn't like it?

Re:Why does C++ matter? (5, Informative)

Anonymous Coward | about a year and a half ago | (#42376899)

From TFA (I know, I know, cardinal sin, but I read the article yesterday on LWN):

However, all Stallman had to offer on the topic was "We
still prefer C to C++, because C++ is so ugly" (sic). As a result of
this, the GNU coding standards have not seen any update in years and
are entirely obsolete.

So, RMS wasn't involved in the C/C++ switch, but his refusal to acknowledge it has lead to a lack of "C++ is a real thing, we should have a coding standard" across GNU.

I saw another comment somewhere (that I can't find now) about how, prior to LLVM, RMS *was* opposing many things (I believe, but can't be sure without the source, that the switch to C++ was one of these things), and since LLVM came out as a competitor, RMS has been compelled to be more amicable to change he doesn't personally like.

Re:Why does C++ matter? (4, Funny)

dalias (1978986) | about a year and a half ago | (#42377365)

The GNU coding standard for C++ should be that you use only the subset of C++ that's also valid as C... :-)

Re:Why does C++ matter? (1)

beelsebob (529313) | about a year and a half ago | (#42377433)

The question is, does that valid C have a different meaning to the also valid C++ :D

Re:Why does C++ matter? (5, Interesting)

Anonymous Coward | about a year and a half ago | (#42376941)

True, but those few people who use C++ correctly seem to have learned their lessons with C. I'm thinking of Sam Leffler, I've held up his clean programming in his HylaFAX software as examples of *how* to do C++, instead of merely holding up the numerous examples of how not to do it.

Unfortunately for comparisons, Sam is one of the authors of BSD UNIX. Not NetBSD, OpenBSD, FreeBSD, or invent-yet-another-pointless-license-scheme-BSD. But original BSD. *Brilliant* programmer. Junior programmers should review Sam's code to unlearn the bad lessons taught by people who don't understand how object oriented work should be used.

Re:Why does C++ matter? (3, Insightful)

Chris Newton (1711450) | about a year and a half ago | (#42377403)

True, but those few people who use C++ correctly seem to have learned their lessons with C.

That may be, at least in part, because many of the less than ideal aspects of C++ come from its C heritage.

I don’t understand some of the arguments made against C++ by certain “elder statesmen” of the OSS world. It seems they don’t like some of the extra functionality available in C++, seeing it as overcomplicated or too readily able to hide behaviour. In itself, that’s a reasonable concern. But then they use C, and reinvent the same wheels using crude text substitution macros that could be doing or interacting with anything.

On another forum discussion a few days ago, I saw someone argue that the Linux kernel is very readable, citing this C file [linux.fm] as an example. I’m still not sure whether their comment was meant to be sarcasm.

Re:Why does C++ matter? (4, Informative)

marcovje (205102) | about a year and a half ago | (#42377413)

Leffler moved on to FreeBSD afaik, and even was FreeBSD Foundation president for a while

Re:Why does C++ matter? (3, Informative)

K. S. Kyosuke (729550) | about a year and a half ago | (#42377087)

So RMS doesn't like C++ -- this doesn't stop people who can use it properly from writing their projects in it, does it?

Yeah, after they enforce a company-wide ban on multiple inheritance, exceptions, and 95% of the publicly available libraries [google.com] .

Re:Why does C++ matter? (3, Informative)

Anonymous Coward | about a year and a half ago | (#42377369)

So RMS doesn't like C++ -- this doesn't stop people who can use it properly from writing their projects in it, does it?

Yeah, after they enforce a company-wide ban on multiple inheritance, exceptions, and 95% of the publicly available libraries [google.com] .

The Google style only applies to code written by Google employees. Those publicly available libraries are not banned (except for Boost, and then only certain parts of it).

Re:Why does C++ matter? (1)

sg_oneill (159032) | about a year and a half ago | (#42377379)

Multiple inheritance is actually problematic in a lot of cases, especially for libraries.

Of course , its like singletons or whatever. Shouldn't do it, but sometimes deadline-practicality wins and its the best tool for the job.

Re:Why does C++ matter? (1)

K. S. Kyosuke (729550) | about a year and a half ago | (#42377451)

Multiple inheritance is actually problematic in a lot of cases, especially for libraries.

Actually, multiple inheritance is problematic whenever you don't have a MOP at your disposal, because it's never clear what class precedence linearization is appropriate and whether or not it should be the same one for all cases and problem domains.

Re:Why does C++ matter? (1)

sg_oneill (159032) | about a year and a half ago | (#42377339)

He's got sway. I actually love RMS's philosophy and the staunchness with which he defends it. But sometimes yeah he's a bit old fashioned like that, and yes he has some sway, because GNU is a specific project, not just a licence.

Personally I can't stand C++ either, but my decisions affect me alone, not a huge volenteer org I'm heading up.

I often disagree with RMS, but... (-1, Troll)

jcr (53032) | about a year and a half ago | (#42376833)

When he's right, he's right. C++ is crap.

-jcr

Re:I often disagree with RMS, but... (3, Insightful)

TheRaven64 (641858) | about a year and a half ago | (#42376973)

C++ is crap, but when the alternatives are a tasteful subset of C++ and a half-arsed reimplementation of a horrible subset of C++ in C macros, I'd rather take C++ and bitch about it than suffer in C. There are very few places where C++ is the right tool for the job, but C is often not the right tool for these either.

Re:I often disagree with RMS, but... (1)

BenoitRen (998927) | about a year and a half ago | (#42376993)

Except C++ isn't crap.

Re:I often disagree with RMS, but... (1)

pointyhat (2649443) | about a year and a half ago | (#42377003)

Prove it!

Re:I often disagree with RMS, but... (4, Funny)

Anonymous Coward | about a year and a half ago | (#42377053)

Except C++ isn't crap.

Pshaw. Well, I guess we can't really blame the Inferiors. Until you mature, I suppose you won't have a lush, fully-grown neckbeard whispering in your ears the dark secrets of why any programming language invented past 1972 is inherently worse. Trust me, everything will make so much more sense once you've heard the beard. Then you'll understand why we ONLY decided to grudgingly tolerate C after we made it more baroque than necessary to ensure our own job security. This entire "easier to write code" fad will certainly pass.

Re:I often disagree with RMS, but... (4, Insightful)

Anonymous Coward | about a year and a half ago | (#42377253)

That's why all of the leading DBMS's and most Triple-A video games are primarily written in C++, as well as the guts of Google's search engine, Amazon's order and fulfillment system, Microsoft Office and Exchange server, etc.

Because these people don't realize that C++ sucks that's why!

Re:I often disagree with RMS, but... (2)

jedidiah (1196) | about a year and a half ago | (#42377323)

The leading DBMSs?

Those are likely older than you are.

Probably not as much C++ in there as you think.

Distaste of C++ (5, Insightful)

BenoitRen (998927) | about a year and a half ago | (#42376847)

I knew about Linus Torvalds's distaste of C++, but not Richard Stallman's. What is it with open-source leaders and their irrational hate of C++?

Re:Distaste of C++ (5, Insightful)

russotto (537200) | about a year and a half ago | (#42376863)

I knew about Linus Torvalds's distaste of C++, but not Richard Stallman's. What is it with open-source leaders and their irrational hate of C++?

It's not irrational, or at least probably isn't. C++ is a horrible language, and I say this as a professional C++ programmer.

Re:Distaste of C++ (1)

BenoitRen (998927) | about a year and a half ago | (#42376949)

Most professional code is horrible, so I don't think that lends any weight to your opinion.

I find "C++ is horrible" to be an opinion that has become easily parroted.

Re:Distaste of C++ (5, Interesting)

Animats (122034) | about a year and a half ago | (#42376953)

C++ is a horrible language, and I say this as a professional C++ programmer.

C++ stands alone as the only major programming language with hiding but without memory safety. Strostrup is in denial about this, which prevents fixing the problem.

Templates don't help. Trying to make templates into a compile-time programming environment results in a language that makes Perl look readable. Just because templates are a Turing-complete term-rewriting system doesn't mean you want to use them that way. Papering over the safety issues with templates doesn't help; the mold always seeps through the wallpaper. Usually at system calls that demand raw pointers.

(Somewhere in the 1980s, low-level programming took a wrong turn. We had Pascal, the Modula family, and Ada. Things seemed to be getting better. Then Modula crashed and burned along with DEC, and Ada declined due to its bulk and overly expensive compilers. We all had to go back to C. That we're still stuck there is embarrassing. It's probably the worst major engineering standard since the British buffer-and-chain coupler from 1830 still in wide use.)

Re:Distaste of C++ (1)

BenoitRen (998927) | about a year and a half ago | (#42377051)

I take it this means that you don't like C++ because it doesn't babysit your memory usage? If you add memory safety it would lose compatibility with C and lose a lot of its power.

You're full of shit. Ever hear of RAII? (5, Insightful)

Anonymous Coward | about a year and a half ago | (#42377149)

When using RAII [wikipedia.org] sensibly, C++ does offer excellent support for babysitting your memory usage. In fact, it offers superb support for managing any sort of a resource that needs to be allocated and later deallocated. There is no good equivalent in C.

These days, C++'s modern smart pointer classes make memory management a complete non-issue. You get very predictable and effortless freeing of memory, all without having the performance of your app destroyed by garbage collection like you do when using a language like Java, C# or Ruby.

This is just the power of C++ in action. It lets you easily build minimal-cost abstractions upon C.

Re:You're full of shit. Ever hear of RAII? (1)

Anonymous Coward | about a year and a half ago | (#42377435)

If you're a stellar coder building from the ground up, C++ is fantastic, especially for cheap performance and rapid development of flexible structures and object hierarchies.

However, if you're adopting someone else's code, C++ IS A DOG PERIOD. Chances are, 99.99% of the time, you'll grow grey hair trying to dechipher what was meant by that template library, these three different class-hierarchies, or why the hell they use C randomly all over the place...!

I loved C++ in my teens, but got over it. Other's code just wasn't worth it, and coding it all myself wasn't worth it either.

Ruby I feel is on the right track. Not Rails. Ruby.

Re:Distaste of C++ (2)

PhrostyMcByte (589271) | about a year and a half ago | (#42377161)

+1. High-level features are not mutually exclusive with low-level ones. C++ being "unsafe" in some areas is not something people are in denial about -- it is a purposeful tradeoff for providing unbeatable performance when you need it.

Want more safety? Performance not an issue? There are better languages for those cases than C++, and it's a programmer's prerogative to use them, not a standard body's job to adapt the language for something it isn't intended for.

Re:Distaste of C++ (2)

Animats (122034) | about a year and a half ago | (#42377229)

C++ being "unsafe" in some areas is not something people are in denial about -- it is a purposeful tradeoff for providing unbeatable performance when you need it.

This is widely believed, but wrong. You don't have to go all the way to garbage collection to get memory safety. Most of the problems with buffer overflows stem from the language design concept that the language usually has no clue about how big an array is. If the compiler knows about array sizes, it can not only check them, it can optimize the checking. Bolt-ons via templates or macros can't do that efficiently.

Re:Distaste of C++ (1)

betterunixthanunix (980855) | about a year and a half ago | (#42377295)

Want more safety? Performance not an issue? There are better languages for those cases than C++,

There are also better languages if you want both safety and performance.

Re:Distaste of C++ (2)

Kjella (173770) | about a year and a half ago | (#42377447)

+1. High-level features are not mutually exclusive with low-level ones. C++ being "unsafe" in some areas is not something people are in denial about -- it is a purposeful tradeoff for providing unbeatable performance when you need it. Want more safety? Performance not an issue? There are better languages for those cases than C++, and it's a programmer's prerogative to use them, not a standard body's job to adapt the language for something it isn't intended for.

The problem with that argument is that 90%+ of any given application is not performance critical. In many cases I'd argue almost none of the code is performance critical because the limitation sits between the keyboard and the chair, particularly when it comes to writing desktop apps like KDE, Gnome, Firefox, OpenOffice and so on. Far from all tings are critical on the back end either, as long as they get done on time. C++ is like using a scalpel all the time because it's a damn sharp knife, which probably works but it's not practical for anybody, not even trained surgeons. Speaking of better languages, what choices are there for writing something like KDE or Gnome? Java? C#? ObjectiveC? Or something entirely different? It's easy to find faults with C++, it's a bit harder to see the better alternative.

Comptibility with C... (2)

betterunixthanunix (980855) | about a year and a half ago | (#42377287)

  1. What compatibility with C? C and C++ diverged long ago; there is now only a non-empty intersection of the two languages.
  2. High-level languages often include an FFI, and that FFI is usually able to call compiled C functions. Lisp does it, Haskell does it, even Java supports this (and by extension, so do JVM languages like Scala).
  3. How is continuing to support the language that allowed programmers to create many of the most infamous bugs in the history of computing a source of language power? When I think of language power, I think more of things like the ML type system, the Lisp macro system, embedded definite clause grammars, etc. -- things that enable programmers to write code in a single day that would take weeks of effort to get right in C++.

Re:Distaste of C++ (0)

Anonymous Coward | about a year and a half ago | (#42377081)

Templates don't help. Trying to make templates into a compile-time programming environment results in a language that makes Perl look readable.

The nice thing about templates is that most programers do not have to write templated classes, they can use existing ones or just continue to write template fee code. Now compare the template classes provided by c++ to their c alternatives:

need a stack? write your own
need a list? write your own
need a deque? write your own
need to sort objects with qsort? void* and casts are your friends
  and repeat this for every type you need them for (excluding define and header hacks that make templates look reasonable).

Templates are great for solving the problem they where intended to solve, everything else is just a feature few people will have direct contact with.

Re:Distaste of C++ (2)

innocent_white_lamb (151825) | about a year and a half ago | (#42377371)

Do yourself a favour and take a look at glib [gnome.org] . God's gift to C programming -- the string handling alone is worth its weight in, well, gstrings...

Re:Distaste of C++ (0)

Anonymous Coward | about a year and a half ago | (#42377293)

C++ stands alone as the only major programming language with hiding but without memory safety.

Someone is clueless about many things regarding C++, including RAII and the fact taht C++ supports garbage collection for ages now.

Clueless criticism: how does it work?

Re:Distaste of C++ (2)

TheRaven64 (641858) | about a year and a half ago | (#42376977)

As a C++ programmer, you don't hate C++. You only truly hate the language after trying to implement it and reading the ambiguous, informal description of it that they have the cheek to call a specification.

Re:Distaste of C++ (5, Interesting)

Trepidity (597) | about a year and a half ago | (#42377015)

If anything, the dislike for C++ from people who use C++ regularly is much deeper than the more casual dislike that C programmers have. C programmers just think C++ is too complex and unnecessary, but C++ programmers find themselves so consumed by their dislike they end up doing things like writing a point-by-point rebuttal to the entire C++ FAQ [yosefk.com] .

yosefk is a Pussy (1, Insightful)

Anonymous Coward | about a year and a half ago | (#42377373)

He didn't master the tool called "C++", so he got himself a toy called "C#". Now he bitches about the tool when in reality his own conceptual and practical incompetence is to blame.

Define horrible (1)

ArchieBunker (132337) | about a year and a half ago | (#42377067)

For the people who don't program, can you define why its "horrible"?

Re:Define horrible (0)

Anonymous Coward | about a year and a half ago | (#42377299)

if it makes you want to openly weep in frustration at it's unusability and it actively makes doing safe/fun things difficult, then it's probably horrible. (or you don't know how to use it)

Re:Distaste of C++ (1)

mwvdlee (775178) | about a year and a half ago | (#42377097)

What is it about C++ that using just the C parts from it still makes it horrible?
Every programming language has bad parts; use the parts that aren't bad.

Re:Distaste of C++ (0)

Anonymous Coward | about a year and a half ago | (#42377445)

The main problem is that C++ is really it's OWN language, and needs to be treated like that, rather than an upgrade to just bolt on what you want. Being a superset of C, it never really REMOVED the dangerous stuff, nor forced programmers to use the new stuff CORRECTLY. So the majority of programmers using it either strip it down to be "like C" or horribly misuse the most important functions leading to "rat's nests" of code that's just C+ (without the extra "+")

As much as people love to hate it, the upgrade to C and C++ was Java. But even then Java tried too hard to be "everything" and got bogged down under bureaucracy of reinventing the wheel in various toolkits.

Re:Distaste of C++ (5, Interesting)

VortexCortex (1117377) | about a year and a half ago | (#42377139)

Agreed. There are edge cases in the language where the bolted on features don't work together because the implementation issues weren't fully considered before the feature was adopted, and efficiency is a higher priority that not having exceptional cases in syntax. Since most of the language works with itself you only develop this hatred if you've got experience in other nicer languages with syntax isn't broken in places, or until you've mastered the language and been prevented from using it by its own design. The crux of the problem is two fold: C++ tries to distance itself from implementation details, while accepting implementation details as limitations for language constructs (polymorphism + multiple inheritance + template class + method & operator overloading == uninstantiated functions and indeterminate or uncompilable code) C++11 has addressed some of this, but IMO the language just isn't complete! Furthermore the strain is compounded due to C++ being forced to squeeze the substance of its syntax out of the meager scraps of symbol space left over from the voracious host language, C (without support for which the language would have never seen widespread adoption).

Thus, the hatred graph is like a bathtub curve: It seems irrational to those intermediately knowledgeable about the language, but perfectly sane to many new comers and seasoned veterans of C++. A large amount of adoption is due to ease of code migration from C to C++, as opposed to say, Java, and is thus won on no real merit of the language itself, but by it's martyrdom at the altar of compatibility with C. Many of the C to C++ converts never "move the furniture", so to speak, and thus the missing paneling in the corner or dark stains under the rugs is never known to them.

That said, I still use the language, it has its merits, but never all of its features at once -- That's impossible, unlike with most every other language that exists. This is where the hatred has its roots.

Imagine a great Enchantresses who can open their spell book and can command the full fabric of her reality, then imagine a Powerful C++ Wizard who's book of spells has contradictory elements and seemingly arbitrary restrictions based only on the syntax of the spell definitions, they've each trained a mighty Sorcerer who's now well versed in both arcane books of magic, and its his turn to take on an apprentice. The sorcerer advises against C++ for the most serious of wizardry since more elegant alternatives exist. However, the young apprentice can't fathom why... The simple C++ spells she learned seem to work fine, a natural extension of the C illusionist lessons she learned; Did not re not her object oriented magic of mops and buckets allow cleaning the kitchen floors with any sort of bucket and mop? It's unthinkable that this spell shouldn't be applied to every floor -- NAY -- every surface and abolish cleansing chores forevermore... Soon the Sorcerer arrives to dispel the tangled templated abominations of multi-inherited broom-mop-bucket hybrids so overloaded they're smashing stacks of dishes with their many scrubbing appendages, and overflowing the tower with heaps of infinite buckets.

Re:Distaste of C++ (1)

AliasMarlowe (1042386) | about a year and a half ago | (#42376869)

irrational

That word does not mean what you apparently think it means...

Re:Distaste of C++ (5, Funny)

Anonymous Coward | about a year and a half ago | (#42376913)

My distaste of C++ cannot be expressed as a fraction.

Re:Distaste of C++ (3, Insightful)

BenoitRen (998927) | about a year and a half ago | (#42376969)

Yes, it does:

  • 1. without the faculty of reason; deprived of reason.
  • 2. without or deprived of normal mental clarity or sound judgment.
  • 3. not in accordance with reason; utterly illogical: irrational arguments.
  • 4. not endowed with the faculty of reason: irrational animals.

Re:Distaste of C++ (0)

Anonymous Coward | about a year and a half ago | (#42376881)

Probably because you have to hold the language's hand at every step.

Re:Distaste of C++ (4, Insightful)

thsths (31372) | about a year and a half ago | (#42376963)

> I knew about Linus Torvalds's distaste of C++

And for good reason, C++ in kernel space is a recipe for disaster. Some parts of it may be useful, others would be highly inappropriate.

> What is it with open-source leaders and their irrational hate of C++?

There is nothing irrational about it. C++ is one of the most powerful compiled languages ever conceived, but it is very ugly. It also supports just about any programming paradigm, badly, making the choice between them especially hard. Every other language out there has more focus and more style, except maybe perl.

Re:Distaste of C++ (3, Interesting)

PhrostyMcByte (589271) | about a year and a half ago | (#42377105)

And for good reason, C++ in kernel space is a recipe for disaster.

I hear this fairly often, but never with any compelling argument behind it. What parts of C++ wouldn't work well for kernel-mode, exactly? How are these specific parts, combined, enough to give a blanket "recipe for disaster" statement?

The one poor argument I've heard is that some C++ features requires runtime support, and people seem to think this runtime support is some user-mode voodoo that is impossible to implement in kernel-mode. Which is complete nonsense.

I've written drivers (albeit for Windows, not Linux), and I'm a bit of a language lawyer when it comes to C++. I can't say I've ever encountered a problem in kernel-mode where I thought C++ wouldn't be able to do the job. And not with some crappy subset of it, either. I mean full-blown, properly-used C++.

Re:Distaste of C++ (4, Interesting)

darkHanzz (2579493) | about a year and a half ago | (#42377127)

On the other hand, it's the only mainstream language I know that supports both very low-level and very high-level programming style. This can be a real plus for compute intense signal processing, were a small minority of the code really requires low-level implementations. Being able to mix that with high-level abstractions (e.g. linear algebra factorizations) can give both efficient and maintanable code.

Re:Distaste of C++ (1)

maxwell demon (590494) | about a year and a half ago | (#42377265)

It also supports just about any programming paradigm, badly, making the choice between them especially hard.

So C++ is bad because it doesn't force you to use a specific paradigm? I'd say that's one of the strengths of C++. Yes, it means you have to think more. But I don't consider that a ad thing. Especially if the forced paradigm would lead to suboptimal code because your problem (or worse, just part of your problem) is more naturally described in a different paradigm. Or you'd be fighting the other language to make your code fit (like in Java building pseudo-classes only to hold "global" functions which cannot be global just because the language doesn't allow it).

Note that I don't claim that C++ doesn't have its problems (the most important one being its overly complicated syntax, which in large parts comes from being compatible with C, but in some parts also comes from bad decisions in C++-specific features). C++ is definitely not the best language possible. but its advantages over the existing languages (at least those I know) are large enough to make it still better than those despite its problems.

Especially in my view the languages which start with the expressed goal of improving on C++ (at least those I know) throw out the baby with the bathwater. Which is a shame because C++ could win a lot if properly redesigned without the compatibility baggage (both to C, and to earlier versions of C++).

Re:Distaste of C++ (4, Interesting)

PhrostyMcByte (589271) | about a year and a half ago | (#42377025)

What is it with open-source leaders and their irrational hate of C++?

I don't think it's irrational. It's just for different reasons than many individuals may have.

It is perfectly possible for someone extremely competent in C++ to write code that someone else, with an equal level of knowledge and experience, can't make heads or tails of without some serious review time.

And then there's an additional problem that, because C++ is such a complex language, it's possible for people with more experience to write better code that people with less experience simply can't yet understand. And by less experience, I mean someone who understands the problem and the general solution, but only has 5 years of heavy C++ use. This problem of pure language complexity and a huge ramp-up time may not be unique to C++, but it's something C does not really suffer from.

I say this as someone who absolutely loves C++ and uses it daily. I love the complexity. I love to play around with templates to do some micro-optimization that I'd probably never put in live code. But I must say, the idea of being a maintainer -- reviewing and committing a diverse set of patches like Linus has to do -- for a C++ project sounds incredibly daunting for the reasons given above.

Often, this leads to atrocious usage guidelines [googlecode.com] that significantly hamper the flexibility and power of the language in an attempt to make it more accessible.

Re:Distaste of C++ (1)

maxwell demon (590494) | about a year and a half ago | (#42377315)

But if you build custom structures using macros on top of C (and if you look at the gcc source code, you'll find they did that a lot), you'll be no better off. Instead of learning advanced C++, you'll be learning advanced project-specific macro-based structures.

Re:Distaste of C++ (1)

Xordin (66857) | about a year and a half ago | (#42377469)

Totally agree. I've maintained a couple of C++ codebases in my time. It would take weeks to expand my C++ knowledge to where I could understand the favorite language patterns of the old maintainer.

Running old C++ code through Valgrind is hilarious. It's hard to believe how many things even experienced C++ coders get wrong.

Re:Distaste of C++ (0)

Anonymous Coward | about a year and a half ago | (#42377069)

The best that I can think of: C is small, and C++ is big. Who wants to use C++ with its pathetic excuse for type safety when you could use C just as easily? More to the point, why would you use a full-fledged string class and a gigantic I/O streams library for tools that perform jobs of relative simplicity? I'm not saying the code to do it is simple or trivial, but it's like using a battering ram to open a locked door when the key in your pocket would be much faster and more efficient. Aside from that, if you're using C++, it's tempting to use more like the new library to do all of the grep processing. Then you have a larger and slower program. Stroustrup would disagree but that's because of the implementation or OS limitations. The reality is that you can't keep going with a big program. Small and fast is good. Big and slow is not.

Re:Distaste of C++ (1)

larry bagina (561269) | about a year and a half ago | (#42377111)

Bjarne Stroustrup is the father of c++. If you go read his interviews about why he created c++, you'll see that he hates C. But C was popular so he built C++ on top of it. Think about that. If you married a girl and told her she's fat and ugly and you only married her because her dad's rich.. that might upset her.

Think about that and some of the C++ design decisions take on a new light. For example, std::auto_ptr (deprecated in c++11) didn't work with arrays because you should use std::vector instead. But you need that array for C interoperability or better performance? Well fuck you. That said, c++11 is much nicer but it's still moving further and further away from C.

Re:Distaste of C++ (3, Informative)

YurB (2583187) | about a year and a half ago | (#42377331)

Linus doesn't like C++ because he's a kernel programmer. It's important to him what the CPU actually does, i.e. what machine code gets produced (more or less). RMS may not like C++ because he's from the old generation of programmers who were dealing with all the slow and big machines and for whom object oriented programming may seem just too abstract, too conceptual and far from the machine code... RMS also likes Lisp more than Python, and Lisp is also a very old language.

pot meet kettle (2)

gbjbaanb (229885) | about a year and a half ago | (#42376853)

However, all Stallman had to offer on the topic was "We
still prefer C to C++, because C++ is so ugly" (sic).

well, score one for technical argument and intellectual reasoning.

If ugliness was a consideration, then surely GNU should be moving to a beautiful language, such as C#. If no, then WTF does subjective qualities of a language have to do with anything, there's no problem with any language as long as it is understandable (and I contend that means individual coding style rather than anything in-built - C can be so obfuscated they have competitions for it!).

the problem with all of this is the usual geek tendency of arrogance - where one always thinks he has the mental superiority to everyone else, and this is the biggest single detriment to the OSS community of all.

Re:pot meet kettle (1)

Steauengeglase (512315) | about a year and a half ago | (#42376943)

I'm just some guy on the street, but I was pleased to read it and see that it was for pragmatic and not political reasons. At least a pragmatic problem can have a pragmatic solution instead of turning into a ideological mess.

Re:pot meet kettle (0)

Anonymous Coward | about a year and a half ago | (#42377001)

Surely you're kidding, right? When has any programming-language-based argument EVER been treated as a purely pragmatic issue and then solved? I've been programming professionally and as a hobby since 1977, and calling language disputes "religious wars" has always been one of the most extreme forms of understatement in all of computing.

Re:pot meet kettle (1)

Steauengeglase (512315) | about a year and a half ago | (#42377071)

I'll take a language fight over a commie GPL v. capitalist proprietary license v. any other license style fight any day of the week. At least the former doesn't end with totalitarianism v. global corporatism.

Re:pot meet kettle (1)

Anonymous Coward | about a year and a half ago | (#42377023)

As opposed to the ability to follow simple syntactic rules and spelling practices, such as capitalizing the first letter of your sentences or learning when to use parentheses instead of misusing "-" to separate a parenthetical comment. And let's not forget repeating part of a sentence part of a sentence part of a sentence part of a sentence part of a sentence part of a sentence.

The problem is that C++ _encourages_ such levels of abuse by failing to even report such syntax errors as errors. The compiler often blindly accepts massive errors, such as miscasting of variables, as valid syntax. This makes debugging far more complex. Don't get me *started* on the results of operator overloading encouraged by C++.

Who Gnu (-1)

Anonymous Coward | about a year and a half ago | (#42376861)

Who gnu that was coming?

Re:Who Gnu (3, Insightful)

jedidiah (1196) | about a year and a half ago | (#42377375)

It's like I just got out of a hot tub time machine and it's 1995.

Glacially slow development in GNU projects? That's not new.

Linux would not exist without the annoying aspects of GNU and the FSF. They would have made their own kernel in a timely fashion and Linus may never have been motivated to make his own.

In other news: water is wet and apples fall out of trees.

grep and sed need routine maintenance? (0)

Anonymous Coward | about a year and a half ago | (#42376871)

wow, you'd think they would be pretty much done by now

Re:grep and sed need routine maintenance? (1)

maxwell demon (590494) | about a year and a half ago | (#42377383)

wow, you'd think they would be pretty much done by now

Well, the post is actually a sed release message. Here's the start:

I am pleased to announce the release of GNU sed 4.2.2. The latest
release has the following bug fixes and new features:

* don't misbehave (truncate input) for lines of length 2^31 and longer

* fix endless loop on incomplete multibyte sequences

(There are actually quite a few more points)

Line lengths of more than 2^31 are probably not that common (indeed, even about a decade ago that would have exceeded maximal file size), so it's no surprise that it only came up now (indeed, some vendors would probably just have documented it as limitation of their program instead of fixing it). Also, multibyte characters for sure weren't in the original specification of sed.

slick as a gazelle? (0, Offtopic)

Anonymous Coward | about a year and a half ago | (#42376875)

You'll still get eaten by a big cat.

2000 called (1)

Fished (574624) | about a year and a half ago | (#42376897)

The year 2000 called. They want their "obvious" back.

Thanks! (0)

Anonymous Coward | about a year and a half ago | (#42376957)

Good post. Thanks, Paolo! I've used grep and sed as much as anything else on *nix systems...I'm glad you contributed for as long as you did.

"Pointed criticism", but hardly "scathing rant". (5, Informative)

Anonymous Coward | about a year and a half ago | (#42376959)

I advise people to read the actual message; this summary is exaggerated.

Holy slanted summary, Batman! (4, Informative)

murdocj (543661) | about a year and a half ago | (#42376989)

The posting is NOT a "scathing rant", it's a pretty clear, calm and well-reasoned explanation as to issues that the author sees with GNU and GNU software development. There's no flamebait, no ranting, no name-calling.

Re:Holy slanted summary, Batman! (0, Troll)

Anonymous Coward | about a year and a half ago | (#42377057)

But this is Slashdot where one crazy neckbeard (RMS) is never flat out wrong no matter how wrong he is.

Go To Mr Ballmer, Boy (-1)

Anonymous Coward | about a year and a half ago | (#42377417)

..and make him stick his dick into your anus.

Re:Holy slanted summary, Batman! (0)

Anonymous Coward | about a year and a half ago | (#42377077)

Totally this! There have been some good rage quits in the open source community, but this isn't even close to one of them. It's very dignified, clear, and ammicable.

More to the point, he is _right_.

GNU was never sexy imo.. it always had a stuffy boring but reliable feeling to it. Even that logo.. it just feels.. old, even when it was new! More than that, it has crawled while everyone around them ran. It kicked a lot of stuff off, but has just kinda sat there, refusing to give up ideas long since proven silly.

Some people like working on the old reliable stuff, and I think GNU still has a huge place for a long time.. but I totally agree that if you want to be on the cutting edge and driving change vice maintaining the base line.. GNU is not the place to be.

If you want sexy, you're in the wrong place (0)

Anonymous Coward | about a year and a half ago | (#42377163)

GNU was never sexy imo

That has to be one of the most ridiculous comments ever made about GNU or FSF. Jeez, talk about scraping the barrel.

GNU was never aimed at being sexy. It was completely focused on software freedom, and has steadfastly stuck to that line.

If you don't value that goal, and prefer "sexy", you need to get out of our hair fast and find your own interest group.

Re:If you want sexy, you're in the wrong place (0)

Anonymous Coward | about a year and a half ago | (#42377425)

Other AC never said it was supposed to be "sexy", just that it wasn't.

Personally while I disagree with RMS and the FSF on a lot of things, I do have to admit they have never in my memory compromised on their core goals. RMS is a mildly extremist lunatic, but he's not a hypocrite.

That said, I do agree that GNU really is the dragging edge software wise. They continue beating horses long after there is nothing there but horse mash (see: guile) and seem to outright ignore a lot of the non-philosophical advancement in software.

Re:Holy slanted summary, Batman! (3, Informative)

statusbar (314703) | about a year and a half ago | (#42377177)

Absolutely.

Also, one of the interesting points about the primary reasoning behind the creation of the CLANG compiler was not because of the GPL license.

it was because the developers wanted to make GCC more powerful, so that it could be used as a library.

Stallman refused to allow the features to be added even though they were not asking for the GPL licensing to be changed.

So the developers started CLANG. In c++. as a library.

Watch this for some very interesting history and features:

http://channel9.msdn.com/Events/GoingNative/GoingNative-2012/Clang-Defending-C-from-Murphy-s-Million-Monkeys [msdn.com]

Re:Holy slanted summary, Batman! (0)

Anonymous Coward | about a year and a half ago | (#42377397)

He questioned a local cult hero. Wagons must be circled, and straw men erected and destroyed.

No disagreements? (0, Troll)

hduff (570443) | about a year and a half ago | (#42377039)

So he's just on his period?

Oh wait, it's just a sensationalist headline.

Exciting stuff (0, Troll)

Anonymous Coward | about a year and a half ago | (#42377107)

One neckbeard quits his job because he doesn't like some other neckbeards.

News at 11.

I fail to comprehend the money part (0)

Anonymous Coward | about a year and a half ago | (#42377129)

"Projects such as gnash are bound to have constant funding problems despite being (and having been for years) in the FSF's list of high priority projects."

Aaaand to (hypothethically) dump RMS and FSF is gonna help gnash funding... How, exactly?

I think RMS gets way too much hate than he deserves, but I would be more likely to understand this as basis for such a decision. That no one besides FSF, which receives limited funding itself, helps GNU is hardly an argument against FSF. I get the point about bureaucracy and indecisiveness, though.

Re:I fail to comprehend the money part (0)

Anonymous Coward | about a year and a half ago | (#42377251)

I think RMS gets way too much hate than he deserves

He has gone out of his way to earn every bit of that hate.

RMS is right about C++ (0)

Anonymous Coward | about a year and a half ago | (#42377135)

sorry

He sounds like a whiny teenager (1)

Anonymous Coward | about a year and a half ago | (#42377181)

I re-read Bonzini's post, and his complaints seem to boil down to this:

1. There are no official or de facto C++ coding standards for GNU projects. There cannot be an official one because of Richard Stallman's opposition to C++. Not that his voice matters anymore to those working in the trenches, but hey, it's still annoying.

2. The FSF isn't doing enough to help the GNU projects, either with funding or PR.

3. It simply isn't "cool" to be associated with a GNU project anymore.

Not saying that these aren't valid reasons for moving on... people make career decisions for any number of reasons. However it IS bad form to blast this out in a public forum as one's last act as official maintainer. Because many people read and remember the headline without reading and evaluating the content.

I predict that Mr. Bonzini will soon regret that he doesn't work for a boss with such a detached style as Stallman.

Re:He sounds like a whiny teenager (4, Insightful)

KermodeBear (738243) | about a year and a half ago | (#42377367)

3. It simply isn't "cool" to be associated with a GNU project anymore

That isn't quite what he said.

3) Attaching the GNU label to one's program has absolutely no attractiveness anymore. People expect GNU to be as slow as an elephant, rather than as slick as a gazelle, and perhaps they are right. Projects such as LLVM achieve a great momentum by building on the slowness of GNU's decision processes, and companies such as Apple get praise even if they are only embracing these projects to avoid problems with GPLv3.

Being part of GNU is not an emblem of technical leadership anymore, either. "If it is done poorly in Unix, feel free to replace it completely with something totally different and better". Is this still true of today's GNU?

He said that GNU isn't attractive because the leadership isn't effective. It takes too long to make decisions. Sounds to me like "analysis paralysis", or at least typical management where people are too busy playing politics instead of trying to create something awesome.

Christmas (1)

dutchwhizzman (817898) | about a year and a half ago | (#42377257)

It's Christmas and we have nerd rage on the intertubes. At least it's less boring than reading facebook updates or twitter feeds....

Re:Christmas (0)

Anonymous Coward | about a year and a half ago | (#42377297)

more nerd rage [lwn.net]

Prick (-1)

Anonymous Coward | about a year and a half ago | (#42377399)

Please remove all commit access to this guy (Paolo Bonzini).

What a fucking disrespectful and ungrateful prick he is.

Is this about Copyright Assignment? (2)

Xordin (66857) | about a year and a half ago | (#42377427)

The LWN article linked to is about "Copyright assignment" (http://lwn.net/SubscriberLink/529522/854aed3fb6398b79/)

The author seems to complain that he cannot retain copyright over his work.

Does that mean he doesn't want to code for free anymore?

Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...