I use Emacs to do all my editing. But I think it's a failure compared to what it could have been.
There's nothing inherent about Emacs that ties it to being an editor, it could have been rewritten a long time ago in Scheme or acquired a FFI. Then things like GNOME or TextMate might have been rewritten as part of the Emacs ecosystem, while looking exactly like they do today.
Instead Emacs is a very specific thing to a small crowd, and adding things like a FFI to it have been vetoed by Stallman in the past. That's one of the reasons I think that we still don't have Lisp as a first-class systems programming language on GNU as the initial announcement promised: http://www.gnu.org/gnu/initial-announcement.html
GCC is much the same. There was a proposal many years ago to make a libgcc. Stallman vetoed that on the basis that things like C++ support might be written without contributing the changes back to the FSF.
That's a fair point, but LLVM+Clang are quickly replacing GCC in some areas due to its monolithic architecture. You can't write things like a C source code using GCC as a backend (easily), but you can with the LLVM tools.
Instead Emacs is a very specific thing to a small crowd, and adding things like a FFI to it have been veto-ed by Stallman in the past. That's one of the reasons I think that we still don't have Lisp as a first-class systems programming language on GNU as the initial announcement promised: http://www.gnu.org/gnu/initial-announcement.html
So RMS failed in one execution for a still extremely excellent toolkit that would have make the GNU project even more well known for its excellent technical quality.
If anything, the GNU project is a great tremendous success, even if it is sometime dogged by its own short-term political interests. If he didn't listen to his political interest and instead focus on technical quality of his work, he would have achieved something much greater for the GNU project and his movement.
It certainly has a lot of inertia. But most of its big projects started in the old days are huge monolithic codebases that are starting to lose favor for various reasons. Emacs because not everyone likes the UI (and it's impossible to replace it, unlike other parts), GCC because Clang+LLVM are more modular and reusable, automake because it's a huge and hard to learn mess while newer systems aren't etc.
It's also losing some users like Apple and the BSD's due to the GPLv3 switchover.
I think that in the long term the GNU project will become increasingly irrelevant due to most of their crown jewels being hard to maintain, and there being political opposition to changing that.
There's nothing inherent about Emacs that ties it to being an editor, it could have been rewritten a long time ago in Scheme or acquired a FFI. Then things like GNOME or TextMate might have been rewritten as part of the Emacs ecosystem, while looking exactly like they do today.
Instead Emacs is a very specific thing to a small crowd, and adding things like a FFI to it have been vetoed by Stallman in the past. That's one of the reasons I think that we still don't have Lisp as a first-class systems programming language on GNU as the initial announcement promised: http://www.gnu.org/gnu/initial-announcement.html
GCC is much the same. There was a proposal many years ago to make a libgcc. Stallman vetoed that on the basis that things like C++ support might be written without contributing the changes back to the FSF.
That's a fair point, but LLVM+Clang are quickly replacing GCC in some areas due to its monolithic architecture. You can't write things like a C source code using GCC as a backend (easily), but you can with the LLVM tools.