13 comments

[ 2.6 ms ] story [ 37.3 ms ] thread
And the result is that most new open source languages (and commercial companies) use LLVM instead of GCC as the backend => way more engineering resources are dedicated to LLVM.
For what it's worth, the leverage did work, just not forever. It was a play with a limited lifetime. It didn't necessarily need to shake out that way, probably if GCC was slightly easier to write for but not too easy people would have invested more. It took a major investment to create a competing product.
I'm not sure that's the only reason. In recent years a lot of projects have chosen to avoid the (l)GPL and use more permissive licences to try and reach a larger audience that might have been spooked by free software.

This gave LLM a leg up too.

In retrospective, I think this came out for the better in case of LLVM, and probably for GCC too. After all, both compilers emit ~equally optimized code today.
There is also the case of the more liberally licensed SRC Modula-3 compiler (front end) which worked around the GPL by running GCC as a separate process and feeding it IR files. Less efficient, but effective.

It's always an option if you're willing to put up with the awkwardness and inefficiency. GPL has more in common with DRM than you would think.

Oh, this is one of my favorite (and sad!) dramas in free software.

Five years later the main llvm developer proposed [0] to integrate it into gcc.

Unfortunately, this critical message was missed by a mail mishap on Stallman's part; and he publicly regretted both his errors (missing the message and not accepting the offer), ten years later [1].

The drama was discussed in realtime here in HN [2].

[0] https://gcc.gnu.org/legacy-ml/gcc/2005-11/msg00888.html

[1] https://lists.gnu.org/archive/html/emacs-devel/2015-02/msg00...

[2] https://news.ycombinator.com/item?id=9028738

Strange philosophy, imo. Feels very much like saying "My version of free is best, and I must force you to implement it yourself".
Stallman is such a deep thinker. I think he doesnt get nearly as much credit as he deserves.
What about peripheral packages for the GCC library? The compiler specifies objective C in GPL for front end architecture.
Besides the LLVM drama, we do have a libgcc for jit library now, which uses just the backend to create a better jit than llvm. More speed and more backends.

Did Dave Malcolm contact RMS privately as he said then? I only know about https://gcc.gnu.org/legacy-ml/gcc-patches/2013-10/msg00228.h...

Why did RMS back down then? He still opposes a ffi for emacs, even if behind the scenes there is now a ffi in emacs for gtk.

This does not really matter, there is really worse.

This real apocalypse did happen upon making gcc a c++ project. This is probably one of the biggest mistakes in open software ever.

There were rumors which do match the timing: the media labs (and gcc steering "committee") at MIT being fiddled auround by B. Gates via Epstein (yes, the one you are thinking about). Are those rumors true? Well, there is "something", but "actually what"? All we know is RMS had to "disappear" for a little while... and that was not for health issues and probably to avoid being splash by the MIT 'media labs' affair.

Open source is not enough anymore, we (all of us) need _lean_ open source, which excludes de facto ultra-complex syntax computer languages (c++ and similar), that to foster real-life alternatives in the SDK space.

gcc is now not much better that closed source software.

LLVM is a C++ project from the start and has 5x more contributions than GCC, we should have moved on from C long time ago.