Slashdot Mirror


RMS Objects To Support For LLVM's Debugger In GNU Emacs's Gud.el

An anonymous reader writes with the news that Richard Stallman is upset over the prospect of GNU Emacs's Grand Unified Debugger (Gud.el) supporting LLVM's LLDB debugger. Stallman says it looks like there is a systematic effort to attack GNU packages and calls for the GNU Project to respond strategically. He wrote his concerns to the mailing list after a patch emerged that would optionally support LLDB alongside GDB as an alternative debugger for Emacs. Other Emacs developers discounted RMS' claims by saying Emacs supports Windows and OS X, so why not support a BSD-licensed compiler/debugger? The Emacs maintainer has called the statements irrelevant and won't affect their decision to merge the LLDB support.

19 of 551 comments (clear)

  1. Ain't freedom a bitch... by Anonymous Coward · · Score: 5, Insightful

    ... especially when someone acts freely and in a way you object to.

    1. Re:Ain't freedom a bitch... by Aighearach · · Score: 5, Insightful

      He's presenting and supporting a position that he holds. He's not flaming anybody, he is participating in a rational public debate about something that he helped to start, which seems entirely fair. He chose not to keep maintaining emacs day to day, and so that is his role; to say what he thinks the people running it now should do.

      What you're doing, though, is just to flame him... for speaking his mind... while trying to accuse him of being against the speaking of minds.

      It should be very easy to form a rational basis for views contrary to his. Unfortunately you abandon the attempt right at the start, and resort instead of a basket of logical fallacies. His views are at an extreme end, it shouldn't be hard at all to be both contrary and reasonable.

    2. Re:Ain't freedom a bitch... by laing · · Score: 5, Interesting

      You've made a good point, and I want to emphasize that the LLVM License *IS* an open source license, it's just not as restrictive as the GPLv3 license in terms of how the software can be used. RMS wants software to be free, but GPLv2 is more free than GPLv3 because GPLv2 has fewer restrictions on how the software can be used. RMS is marginalizing himself with his crusade against commercial software.

    3. Re:Ain't freedom a bitch... by causality · · Score: 4, Interesting

      Excellent point, open and free but only in the way he sees freedom... We are talking about the man who is insisting to call Linux, GNU/Linux and likes to flame people for speaking up their minds, with different world visions...

      So he tries to persuade people to agree with him, perhaps passionately, perhaps vehemently, maybe even not so nicely ... but (to my knowledge) he has never used force or fraud to coerce people into behaving the way he thinks they should. That sounds perfectly freedom-loving to me. I'm really not seeing the problem here.

      If your opinion of the guy is correct, then his methods will cause fewer people to listen to him and he will thereby undermine his own efforts. This means such a situation would be self-correcting. I've never heard of RMS using force or threat of force to make you call it "GNU/Linux". The degree of power he has over you is determined entirely by how much you decide to listen to him*. The ability to recognize this is generally called perspective.

      It's as though some people have an entitlement mentality, a manner in which they are self-centered. It leads to them feeling like they've been wronged or mistreated somehow when they discover that someone doesn't agree with them, won't support or otherwise validate them (probably the part that really bothers you), and speaks against them.

      * I started to add "and use his software", but then I realized that's not true - you could use Emacs with the LLVM debugger ... or not, whether anyone else likes it or not, because the GPL and LLDB's NCSA license are compatible. RMS deliberately chose a license allowing this to happen. Did you fail to recognize the significance of that? That freedom means people might do things with which he disagrees does not remove his right to disagree. Are you suggesting it should? If not, what exactly are you trying to say, if you are not in fact expressing another entitlement mentality?

      --
      It is a miracle that curiosity survives formal education. - Einstein
    4. Re:Ain't freedom a bitch... by TehZorroness · · Score: 4, Insightful

      RMS isn't against commercial (for profit) software at all. He's against software that is not completely transparent to the user about what it's doing (and that you can't fix yourself if it breaks). The additional restrictions in the GPLv3 are present to help prevent a company from monopolizing an open source project that was developed by someone else via threat of patent litigation. It also prevents TiVoization - because free software is meaningless to the end user if you can't tweak it and load up your modifications. Both are pretty legitimate concerns. If Canonical started selling Ubuntu laptops which will only load signed kernels (which they could do if they wanted, as the kernel is just GPL2), there's nothing stopping them other than the community gathering it's torches and pitchforks.

      I was curious one time a while back about trying to make my own compiled programming language, and was quite disappointed when I started fishing around in GCC and learned that it really is designed from the ground up not to be extensible. I'm pretty sure RMS quite the hacker, so it disappoints me to see his stubbornness get in the way of writing software with a technically superior design. He has the right intentions, but he's picking the wrong battles here. Free software ideally should be superior to proprietary software in every way. Nerfing GCC and Emacs is pretty reminiscent of Microsoft's (and co.) historic strategy of vendor lock-in via proprietary ill-defined file formats and refusal to implement open standards imho.

    5. Re:Ain't freedom a bitch... by Aighearach · · Score: 4, Interesting

      RMS isn't against commercial (for profit) software at all. He's against software that is not completely transparent to the user about what it's doing (and that you can't fix yourself if it breaks).

      The software that he is objecting to supporting is completely transparent.

      You can also fix it if it breaks.

      Here is the god damned svn: http://llvm.org/svn/llvm-proje...

      So why is he complaining here? What we can take from this is that your comments are worthless shit.

      Your complaint is shit, because the point is both well known, and obvious to anybody who bothered to understand the background.

      The point of the Free Software movement embodied in the Free Software Foundation is to create and support software that actively protects the users freedom by ensuring not only that the original software was transparent and user-modifiable, but also that it would protect you from being embraced, extended, and extinguished. Not everybody agrees with this position, but it is a well known and easy to understand position.

      The counter argument isn't just, "hurr, whu? huh? you're shit." The counter argument is actually that if users have enough freedom available, that they can simply switch to something else and that "embrace, extend, extinguish" has been countered mostly by user demand for portable data formats, and SCOTUS decisions protecting the right to inter-operate.

      The counter-counter argument is that users who really want Software Freedom can choose GPL software and not have to remain vigilant about each little example, each case where somebody is trying to include some proprietary bit and then get you to "need" it. They can instead simply remain vigilant about one thing; using Free Software. And then they're protected, and they can make business decisions with a higher level of predictability.

      Most people can read these arguments and easily choose which one they prefer. The subjective choice, as with most subjective choices, are easy. But not everybody arrives at the same choices! And it is clearly in error to claim that one side didn't have a good point, or is "shit." They're just different points, based on different values and concerns.

      I just wish there was a version of the debate where becoming a package maintainer and thrusting a new paradigm on the users was recognized as a removal of freedom, a form of "embrace, extend, extinguish."

    6. Re:Ain't freedom a bitch... by Aighearach · · Score: 4, Informative

      You clearly didn't read his comments, because you put words in his mouth.

      What he actually said:

      I don't know what I will find about LLDB. I don't know what
      conclusions I will reach about it. So I can't say anything concrete
      about it now.

      Installing that change would be favorable for Emacs, probably just a
      little. It would probably be bad for GDB, but I have no idea how
      much. Refusing to installing it would be a statement with some
      significance, but I don't know how much. I can't tell whether
      it is good or bad to install that change.

      Despite this uncertainty, I can say something general about what we
      should do. We should do what is best for the GNU system's goal of
      giving the users freedom. This means considering what is good for
      Emacs and what is good for GDB, to make a decision. Then the whole
      GNU Project should do what is best. That is the responsibility of
      each GNU package maintainer.

      If GNU packages do not support each other, it will be easier
      for many of them to fail.

      So no, he doesn't say that free software should be less functional. What he says is that there are different harms and benefits for different packages, and the GNU Project should make the decisions in a way that is best for the GNU Project overall, not just each package doing what is best for that package. Not "just because" they're from the same "stable." It isn't a "stable," where different things just happen to be under the same roof for historical reasons, it is a complete project, where the big picture of providing a toolchain that supports the principles of the Free Software Foundation is the over-arching purpose of the whole thing.

      To me it seems obvious that gcc is losing market share and the damage to gdb will be done either way. Luckily, gdb is well established and stable and doesn't need a bunch of new features, so there is perhaps little harm to be done by having less contributions. Whereas the danger to Emacs from not supporting newer compilers is more obvious.

      If by "similar to... Microsoft" you mean that both organizations want to do what will benefit the goals of the organization, then I'd have say, "well duh." There are strong arguments to be made against that sort of Cathedral approach, and I'm sure there is even extensive published analysis on the differences. None of the critiques would offer to build a better Cathedral, though, so they might just be irrelevant to the decisions that the GNU Project has to make.

      The really key thing here to understand though, is that he says: " I can't tell whether it is good or bad to install that change." From that, you took away that he has "in his mind" a conclusion that clearly contradicts what he said is... in his mind. That reminds me a lot of a tactic that Microsoft is famous for: FUD!

      Actually it is inverted FUD, because you took an uncertainty that is full of doubt, and tried to make it certain in order to spread fear.

  2. Bit of a hatchet job by cfalcon · · Score: 5, Informative

    There's a little more than is being reported. Here's some other RMS lines in the same thread:

    First we have:

    "More precisely, Apple intends LLVM and Clang to make GCC cease to be a
    signal success and a reason for all sorts of companies to work on a
    compiler that always gives users freedom. That would be a victory for
    Apple and a defeat for freedom.

    I don't know what LLDB is, or what it might do. I am going to find
    out."

    That's a little bit paranoid, but it is still a cautious statement.

    Then:

    "This question is a small part of a big issue which is more or less bad.
    I want to find out what it is, and think about it. Please do not ask
    me to rush to a conclusion without finding out what is happening."

    Again, in all of his posts he mentions wanting to discuss it a bit more. RMS is pretty incendiary, eccentric, and often does or says crazy shit but... in this case it sounds like he said something alarmist to get attention and try to get some discussion, without stamping his foot down or flipping his shit. That he's being selectively quoted to make news is bad juju.

    1. Re:Bit of a hatchet job by BasilBrush · · Score: 4, Informative

      If LLVM were a Microsoft product instead of an Apple product

      LLVM is not an Apple product. It's an open source project which Apple, amongst others, incorporate into their products, and to which they contribute source improvements.

    2. Re:Bit of a hatchet job by MouseTheLuckyDog · · Score: 4, Insightful

      If LLVM were a Microsoft product instead of an Apple product

      LLVM is not an Apple product. It's an open source project which Apple, amongst others, incorporate into their products, and to which they contribute source improvements.

      Right and Android LLVM is not an Google product. It's an open source project which Google, amongst others, incorporate into their products, and to which they contribute source improvements.

  3. This Stephan Monnier guy by 93+Escort+Wagon · · Score: 4, Funny

    Take your time. But whatever you find out is irrelevant to whether or not the Emacs maintainer will accept LLVM support into gud.el, at least as long as I'm the maintainer.

    I think I like him.

    --
    #DeleteChrome
  4. Re:BSD is more threatening than proprietary by Dagger2 · · Score: 5, Informative

    Well, it is, but it does sod all to protect that openness, so BSDed software often ends up less open by the time you actually get a copy of it.

    The only stuff the GPL doesn't let you do is remove other people's freedom. That should never be a problem unless you were planning to do that in the first place.

  5. Fragmenting Open Source by murdocj · · Score: 4, Funny

    Ah, Open Source infighting: "We're not the People's Judean Front! We're the Popular Front for Judea. The People's Front is over there".

  6. Re:Who cares what RMS wants? by Anonymous Coward · · Score: 5, Insightful

    Lets see what my grandmother wants while we're at. Her opinion is just as valid.

    If your grandmother is a developer producing useful software available at no cost, used by millions all around the world, and both articulates a philosophy and draws up a license facilitating useful systems such as every Linux distribution, starts a foundation known around the world to advocate said philosophy and host said software, and encouages many people (even those who do not agree) to think about and discuss such matters ... then yes at that point I will begin to care about her opinion on this subject.

    If you don't like RMS that's fine, if you think he's completely wrong that's fine too, but to dismiss his views the way you are doing is weak, cheap, and shows that you lack the emotional maturity to separate your personal feelings from the actual subject at hand. I hope that pointing this out will be useful to someone else, because as for you, I doubt I could reason with you in an adult manner. The really annoying part is: so many people are like this that they think it's normal.

  7. Re: Who cares what RMS wants? by fuzzytv · · Score: 5, Insightful

    No, it's not throwing tantrum. RMS has a philosophy that users of software should have certain freedoms / rights (use, study & modify, redistribute, distribute). That's the gist of GPL and why he founded GNU. BSD-style license does not guarantee these freedoms, and Stallman sees wider adoption of projects using those licenses as a threat to free software. I do work on BSD-licensed projects, but I certainly do share his fear that this poses serious threat to free software in the long run.

    I don't think it's a conspiracy or somehow widely orchestrated effort - more likely it's simply easier not to guarantee those rights and thus more attractive for commercial companies (participating in those projects), but I believe the threat to the freedoms is real.

  8. Re:Forced benevolence is not freedom by faffod · · Score: 4, Informative

    BSD licensed software allows someone to take it, modify it in some meaningful way, and not share those changes back with the community at large. In that sense, it is possible for software licensed under a BSD license to lose the freedom it had. The developers did not lose any freedoms, the source did. GPL does not force you to be benevolent, it just requires that if you want to use GPL'ed software that your contributions remain benevolent (to use your term). If you don't want to, then chose some other solution, no one is forcing you to use GPL.
    Both licenses have their strengths and weaknesses. Both cater to different needs and are appropriate for different (possibly overlapping) uses.Neither is a one size fits all, and neither is better than the other.

  9. Re: Who cares what RMS wants? by peppepz · · Score: 5, Insightful
    Later versions of the GPL cannot take away any freedom granted by an earler version, because the choice of the version is done by who redistributes the code.

    The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

    Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation.

    If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program.

    Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version.

    But serisouly GPLv3 started because of his tantrum with Tivio.

    GPLv3 started because RMS saw that companies were using the GPL in a manner that was compliant to the letter but not to the spirit. Back then, the GNU haters laughed at him, as usual, because "who would want to run code on a set-top box". Nowadays, the vast majority of the end-user devices are tivoized (Android, Apple, Microsoft, ...), and users can't do anything with the code that runs on them, including fixing security bugs and auditing it to find out what it does with all their personal data, let alone (God forbid!) run their own programs on it. So the introduction of the GPLv3 wasn't a whim as you are implying, it was actually sensible and farsighted.

  10. Re:Forced benevolence is not freedom by peppepz · · Score: 4, Insightful

    What rights do BSD contributors lose? All the community code exists, the community can continue without the commercial changes, the community is not required to use some commercial fork. They lose nothing if some contributor chooses not to give back.

    They lose the rights to take advantage of the improvements that the commercial contributor has done to their code, while the commercial contributor does not lose the right to take advantage of the improvements that the free contributor has done. You may agree or disagree with this, but it is objectively a loss.

    Furthermore, users of GPL'd code decide not to give back at times too. They can use some a commercial fork internally and benefit from community work and not give back.

    The point is that with the GPL they cannot commercially fork code written by me. Of course they can do whatever they want with their own code.

    Also, various commercial users of BSD code have a pretty good track record of contributing back.

    This is irrelevant to the discussion. When people make laws against theft, they don't think about the fact that most people have a pretty good track record of not stealing. Laws (and contracts) must be written with the worst case in mind.

    What rights do BSD users lose?

    100% pragmatic example: GPLv3 bash has a serious bug (any reference to reality is purely intentional). GPLv3 users patch, recompile and they have lost no right. BSD-licensed phone firmware has a serious bug. Users lose the right to make use of the phone they bought and not be pwned by hackers while doing that.

    The GPL does *not* offer greater freedom, it creates restrictions to force behaviors it believes benevolent. Forced benevolence may or may not be a good thing but it is not freedom.

    I believe that my rights to own property and to live are freedom. They exists only because other people are "forced to benevolence", in particular not to steal my stuff or harm me. Try to convince me that this is not freedom.

    Translated to the software world, can you argue that the ability to fix the code of a program that I use is not a freedom for me? I'm free from bugs. I'm free from hackers. I'm free to add new features. I'm free both in a practical and philosophical sense.

  11. Re: Who cares what RMS wants? by sirlark · · Score: 4, Insightful

    Also, I should point out that the LLVM/clang situation is a bit more complex. If I recall, LLVM came about because the gnu toolchain deliberately obfuscates it's output and interoperability interfaces with other tools even within the toolchain. This strategy was chosen because the outputs of the individual software tool in the toolchain were not, and could not be protected by the GPL (any version). It would have been possible for a proprietary product to be developed that didn't link to gcc (or another part of the toolchain) to take the useful output of gcc (e.g. a parsed abstract syntax tree) and use it to any number of cool things. The product could still be distributed with gcc (and the required accompanying notices) but the rest of the code would be locked up, because it doesn't link to gcc, only depends on it at runtime. This violates the spirit of the GPL which is not only to make software free, but to keep it free.