Announcement

Collapse
No announcement yet.

Apple Originally Tried To Give GPL'ed LLVM To GCC

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #41
    Originally posted by zanny View Post
    I'm not saying GCC isn't great, I prefer it any time I can use it - for the langauges it supports it is the best. I imagine LLVM Fortran performance, barring a corporate contributor, is pretty shoddy - but the only real reason GCC has good support for an honestly legacy language like it is because its so old. Who would start a new project today in Fortran?

    Where LLVM is great is implementing new languages like Rust. There is a reason the reference compiler targets llvm, after all.
    The field of scientific computing still uses Fortran (usually to the 2003 or 2008 standards) because it's very easy for a compiler to optimise, and it's very natural to write array-oriented code (native array slices/sections of any number of dimensions, can operate on array sections in many incredibly convenient ways without explicit loops). Doing the same kind of thing with C++ is an absolute nightmare by comparison.

    FORTRAN 77 is a steaming pile of shit, yes, but Fortran 2003 is a very sensible choice for, say, Quantum Chemistry or Ab Initio Semiconductor codes.


    Michael, please stop deliberately stirring up shit, while fansplurging constant "PRO LLVM ANTI FSF" flamebait.
    Last edited by aphirst; 25 January 2014, 06:39 PM.

    Comment


    • #42
      Originally posted by Del_ View Post
      Yes, the + is enough. What happened with linux after Linus and RMS had their indifference was that future contributions to linux was GPL2 only, effectively a fork from the GPL2+ code. Such forks can of course be made of GCC too, anybody can fork it and extend it with GPL3 only code.
      Thanks for clarifying that. Then I'd change my opinion, they should have merged it while they could.

      Comment


      • #43
        Originally posted by mark45 View Post
        Justin Bieber was released from jail and wrote an article about LLVM.
        mark45 entered a thread and left a completely useless comment.
        Oh well, it happens every other day...

        Comment


        • #44
          Originally posted by zanny View Post
          I'm not saying GCC isn't great, I prefer it any time I can use it - for the langauges it supports it is the best. I imagine LLVM Fortran performance, barring a corporate contributor, is pretty shoddy - but the only real reason GCC has good support for an honestly legacy language like it is because its so old. Who would start a new project today in Fortran?

          Where LLVM is great is implementing new languages like Rust. There is a reason the reference compiler targets llvm, after all.
          Briefly looking at the github page of lfort, I assume LLVM has no useful fortran support at all, so why did you list it? Not sure about rust, it was just revealed about two years ago. Actually, it seems like there is a lot of confusion surrounding what LLVM exactly is. It is a tool for creating compilers, it is not a compiler itself, or so is my understanding. LLVM seems to be used to create such a compiler, I have no idea how mature it is.

          The Go language on the other side have been here for some time, and here I guess we have the first documentation in this thread of the sort Annabel asked for:

          I actually believed all the hype around LLVM, but the more I dig the more sceptical I get.

          Comment


          • #45
            Originally posted by Del_ View Post
            Briefly looking at the github page of lfort, I assume LLVM has no useful fortran support at all, so why did you list it? Not sure about rust, it was just revealed about two years ago. Actually, it seems like there is a lot of confusion surrounding what LLVM exactly is. It is a tool for creating compilers, it is not a compiler itself, or so is my understanding. LLVM seems to be used to create such a compiler, I have no idea how mature it is.

            The Go language on the other side have been here for some time, and here I guess we have the first documentation in this thread of the sort Annabel asked for:

            I actually believed all the hype around LLVM, but the more I dig the more sceptical I get.

            LLVM implements fortran by invoking GCC. Seriously..

            Comment


            • #46
              Originally posted by mrugiero View Post
              Are you sure the + suffices? Remember what they try to do with the relicensing is avoid the use under GPLv2, which allows patent trolling and tivoisation. I don't know if the + allows to start distributing as 3+ later, as far as I understand, they have no right (without the copyright assignment) to restrict the use of following versions of GCC to GPLv3 and above.
              If there is a GPLv3+ licensed file in e.g. GCC, even though the rest may be licensed GPLv2+, the whole greater work and resulting binaries are effectively GPLv3+.

              Comment


              • #47
                Originally posted by intellivision View Post
                If there is a GPLv3+ licensed file in e.g. GCC, even though the rest may be licensed GPLv2+, the whole greater work and resulting binaries are effectively GPLv3+.
                I didn't thought about that, actually.

                Comment


                • #48
                  Originally posted by prodigy_ View Post
                  Of course it didn't. Apple wanted to pull the old Microsoft EEE trick with GCC but FSF anticipated that.
                  Eheh. Now you're just clutching at straws. Apple wished to provide a legitimate contribution. FSF rejected it -- they had their reasons -- but they still rejected it. Drop the blind Apple-hatred and look at the facts.

                  For the record. I do generally prefer my compilers to be written in C -- C++ can delivery library hell when bootstrapping on a new system. That aside, I generally prefer Clang/LLVM to gcc except where gcc can build for a platform that LLVM can't yet support.

                  Comment


                  • #49
                    There seems to be come confusion here.

                    Originally posted by Del_ View Post
                    Yes, the + is enough. What happened with linux after Linus and RMS had their indifference was that future contributions to linux was GPL2 only, effectively a fork from the GPL2+ code. Such forks can of course be made of GCC too, anybody can fork it and extend it with GPL3 only code.
                    This is not the same thing at all, for at least a couple of different reasons.

                    1. FSF requires copyright contribution so they can close loopholes that degrade freedom in the future. Torvald's concern is different - he doesn't care about that and wants the license to never change. So when GPL3 addressed Tivoization, the FSF can now re-license all files as GPL3+ only, preventing people using such shady practices from using new versions of FSF software.

                    Understand that without copyright ownership, the FSF would not be able to stop people from releasing code under older versions of the GPL - even with a policy to not accept such contributions. Imagine, even if a dev contributed code under GPL3+ and it made it upstream, the code still belongs to the dev to effectively just re-license his contributions back under GPL2+ later on his/her own mirror - completely undermining the FSF's intent.

                    2. Even more importantly, do not underestimate the value (in the eyes of the FSF) to be able to take legal action against people violating the GPL. They need this to prevent people doing things like Tivoization, and whatever threats appear in the future. Although the FSF is really good at trying to avoid legal action wherever possible, owning the code is the necessary leverage to get people and corporations into compliance. My understanding is that without code ownership, the task of fighting copyright infringement can be so difficult as to hardly even be worth their time. AFAICT, Torvalds rarely concerns himself personally with GPL2 violations - he doesn't have much power to do anything anyway.

                    I'll point out that years ago I tried to obtain source code for an interesting fork of wget. After a month of back and forth with the dev, he wouldn't give up the code. I reported the problem to the FSF, and I don't know what they did but a few days later the code was released. I largely assume that it came down to the FSF having that ownership and authority which enabled them to achieve immediate compliance.

                    Originally posted by intellivision View Post
                    If there is a GPLv3+ licensed file in e.g. GCC, even though the rest may be licensed GPLv2+, the whole greater work and resulting binaries are effectively GPLv3+.
                    I'm not sure I can agree with this, for a few reasons (including my first point above). As another example, what if you're contributing a one-line security fix change to a GPL2+ file that you don't own the copyright to? Does that grant you the right to change the entire file to GPL3+, because of your one line change? You still only have a copyright on the change you made - not the entire file. And for the purposes of practicality, I would expect the one line change to not be separately licensed. So in theory, not re-licensing all files could still help out people who don't want to use the GPL3+.

                    Now remember it's corporations who are likely the most problematic GPL offenders, and they would often have the resources to pick the bits of code that interest them. They don't necessarily operate the same way as a user who just picks up the latest tarball, compiles the packages and is done. So while new software releases wouldn't be entirely available to people who which to avoid GPL3+, it's possible that new releases would still hold some advantages for them - something the FSF would certainly want to avoid.

                    I wouldn't be surprised if there are also other reasons to justify the FSF's actions which I haven't thought of.

                    Comment


                    • #50
                      Originally posted by MaxToTheMax View Post
                      This ongoing vendetta against the FSF is getting ridiculous.

                      Personally, I support permissive licenses, and I think the FSF's hardline pro-copyleft stance is doing serious harm to the cause of software freedom.
                      What kind of harm is that? Vague statements are vague.

                      I also think Clang has the potential to become a superior compiler to GCC, with a better design, and under a better license too.
                      And my shit has the potential to grow flowers, but try selling it in a flower shop...

                      But the FSF still does fantastic work creating software that all of us use every day. GCC has been in service for a quarter century. In the world of software, nothing lasts that long. That feat alone earns them a huge amount of respect in my opinion.
                      Seems like many things last that long... Debian, Linux kernel itself... both are over 20 years old and nearing 25. X is even older, first version of X was released in -84.

                      Comment

                      Working...
                      X