Emacs is a programming language with it's own text editor built in. Like every other programming language on the planet, it benefits from dependency management and source code management.
Getting all of our tools into similar management forms ultimately makes all of coding more accessible.
elisp ist the programming language. Emacs is an environment with text-oriented interface. Pretty much like modern browsers, just more mature. One could even say, Emacs is the spiritual ancestor of the electron-framework.
I disagree. I've tried to use Electron editors (VS Code, Atom) and the thing that frustrated me the most is that it is missing the "essence" of Emacs. To me, these things are:
* Self-documenting
* Easy to dynamically inspect and change the editor internals and all packages, from the editor itself
* Emphasis on the editor as an interface into your system (the editor as a way to process and "glue" together text from subprocesses)
Atom in particular seems promising, but from the time that I spent with it, I quickly concluded that it was missing the spirit of Emacs entirely, because it was not straightforward or well-documented how I would go about exploring and changing the internals of the editor and its packages. E.g. a package was throwing an exception...it was quite a process to find the source, set a breakpoint on that error, and fix/work around the bug. That's trivial stuff in Emacs, and IMO is at the spiritual core of Emacs.
I would love to be wrong here, so please correct me if I'm mistaken!
WRT to self-documenting. VS Code and Atom aren't self-documenting like Emacs might have something to do with the language itself. There's just no equivalent of ELISP's powerful introspection mechanism that allows you to fish out the docstring in one simple function call. However, Python does, and it's not even a function call, it's just a property access. Have you tried Sublime?
I assume that is a difference in cultur not ability. But lack of introspection and prototyping is a surprise. After all at the end it's just a browser, which have good tools for such things. Maybe it's just not mature enough for this at the moment.
Getting all of our tools into similar management forms ultimately makes all of coding more accessible.