You clearly don't know what you're talking about. You simply don't argue over customizability of Emacs, nobody does, because they know it's futile. If you think anything else has even some slightly better ergonomics to extend the thing, you just have not seen the bonkers level of extensibility what's possible with Emacs.
In Emacs, you can seamlessly integrate a function from a third-party package, say, a command that fetches a url, parses it, performs processing, and displays the results in a browser. Remarkably, you can modify it to send the results to an LLM or another function instead, without altering any other aspects. This level of granular control is complete bananas and only possible in Emacs. For VSCode, you'd likely need to create a new extension, while in Vim, you'd have to rewrite the entire function. Emacs, on the other hand, allows you to precisely specify and override only the desired part of the function. And once again, you don't even have to save a damn file to try it out.
So, yeah, I don't have to compare it with nothing. Nothing else comes even close.
My point was that I see a lot of people now who aren't getting the advantage that I had, of seeing "here's some Emacs Lisp code that does X", right up in their face, from the start, and constantly.
So they have more friction, to even knowing what Emacs Lisp looks like, and knowing how close they are to extending Emacs themselves.
I'm now utterly confused, even than before. From the start I thought you were saying "Emacs is hard to extend [for a newbie]", or something like that, and I've been arguing that it is not. Now I'm not sure what you're talking about at all - all the packages anyone uses come with their source code, the body of any function is a keystroke away.
Sure, yes, a graphical layer would be nice, I would love to be able to draw some arrows and other elements in some sort of an overlay, something like DrRacket does. And yes, better integration with an actual web browser would be splendid. I would love that.
In Emacs, you can seamlessly integrate a function from a third-party package, say, a command that fetches a url, parses it, performs processing, and displays the results in a browser. Remarkably, you can modify it to send the results to an LLM or another function instead, without altering any other aspects. This level of granular control is complete bananas and only possible in Emacs. For VSCode, you'd likely need to create a new extension, while in Vim, you'd have to rewrite the entire function. Emacs, on the other hand, allows you to precisely specify and override only the desired part of the function. And once again, you don't even have to save a damn file to try it out.
So, yeah, I don't have to compare it with nothing. Nothing else comes even close.