Live data from Hacker News

Emacs is special regarding UIs

lists.gnu.org

11–20 of 418 posts

Re: Emacs is special regarding UIs

#11
One begins to understand the advantages of this approach after 10-15 years or so.

I feel that I am constantly being forced into new "UI paradigms", and it isn't always a change for the better. I started with DOS (Norton Commander, anyone? to this day there is no comparable tool), then Windows 3.0 and 3.1 (which was mostly garbage and I did not enjoy the UI at all). I then started using Linux and discovered Emacs. When I could afford the extra megabytes of memory, I would also run X11. As years went by, I switched to the Mac.

These days I'm worried about what will be taken away from me, especially with Apple and their insistence on removing ports, the idiotic "Touch Bar" instead of function keys — but also with Linux, where the shift away from X11 means no more remote applications, and the (increasingly broken) approach of gluing everything together into a big mudball means that if you're running anything that isn't "mainstream", things break and you are very much on your own.

But I still have Emacs and I'm fairly confident that it will remain available and running on every platform I decide to switch to. And that I will be able to run it (with reduced functionality) on a text terminal.

Re: Emacs is special regarding UIs

#12
I thought it will be a criticism how everything seems off with the Emacs GUI from the copy-paste to the font rendering to the way scrolling is done, etc. I'd guess it managed to be so cross-platform by re-implementing everything, kinda like Java Swing but with less care for design.

Now I understand how having a scriptable and text-based foundation would help with accessibility, just Emacs wins no UI contest.

Re: Emacs is special regarding UIs

#13
post #7

I can think of a few UI styles Emacs doesn't support (to my knowledge) – line mode terminals, block mode terminals (such as IBM 3270 and 5250), and HTML. Now, whether any of those UI styles are actually worth supporting is a completely different question. But it is not quite as universal in support of different UIs as this email claims. (You can technically write line mode applications in Emacs Lisp, try `emacs -batc…

Interesting ... has anybody tried a browser based (which is what I presume you mean by HTML) front end for emacs?

EDIT - just to be clear, I'm talking about emacsclient, talking to a emacs server. Not an actual full blown emacs implementation that's just stupid.

Re: Emacs is special regarding UIs

#14
post #8
post #3

Emacs Lisp is slow. There has been a multi-decade effort to make Guile support ELisp, and using Guile to make Emacs more performant. Cross platform UI, with a faster Lisp, would allow Emacs to be even more special.

As a non Emacs user, is the speed of Emacs Lisp a frustration in typical day to day usage?

For me as a long term Emacs user, started using it 1994ish, it is not an issue. I don't mind the occasional minor lag. In my usage it is rarely in a range where it actually makes me wait.

Emacs has a certain feel to it. Hard to put the finger on, but the movement of the cursor and the scrolling, it just feels nice for me. Like a well worn favourite T-Shirt.

Re: Emacs is special regarding UIs

#15
post #8
post #3

Emacs Lisp is slow. There has been a multi-decade effort to make Guile support ELisp, and using Guile to make Emacs more performant. Cross platform UI, with a faster Lisp, would allow Emacs to be even more special.

As a non Emacs user, is the speed of Emacs Lisp a frustration in typical day to day usage?

Sometimes. Vanilla emacs is lightning fast, but it's also missing critical features for most people.

If you want to use emacs as a an alternative to VSCode, or IDE in general, you'll find high quality plugins that will enable you to do so. But then you might experience slow downs.

As emacs is single-threaded (people will come and tell me it's not anymore, I know, but in practice it still is) you'll feel any slow downs in those plugins. Emacs typing latency isn't great.

It's a mixed bag really. It can be fast, it can be slow. It's still my favorite editor.

Re: Emacs is special regarding UIs

#17
post #11

One begins to understand the advantages of this approach after 10-15 years or so. I feel that I am constantly being forced into new "UI paradigms", and it isn't always a change for the better. I started with DOS (Norton Commander, anyone? to this day there is no comparable tool), then Windows 3.0 and 3.1 (which was mostly garbage and I did not enjoy the UI at all). I then started using Linux and discovered Emacs. Whe…

> Norton Commander, anyone? to this day there is no comparable tool

Directory Opus. I've used it for nearly 30 years. First thing I install on Windows.

Re: Emacs is special regarding UIs

#19
post #8
post #3

Emacs Lisp is slow. There has been a multi-decade effort to make Guile support ELisp, and using Guile to make Emacs more performant. Cross platform UI, with a faster Lisp, would allow Emacs to be even more special.

As a non Emacs user, is the speed of Emacs Lisp a frustration in typical day to day usage?

What are you using now? If VScode or Atom you won't feel any degradation. If vim or SublimeText, some things will take few extra dozens of milliseconds. You could test the Doom Emacs, which is trying to be a feature-full emacs environment optimized for speed.

Re: Emacs is special regarding UIs

#20
post #3

Emacs Lisp is slow. There has been a multi-decade effort to make Guile support ELisp, and using Guile to make Emacs more performant. Cross platform UI, with a faster Lisp, would allow Emacs to be even more special.

Guile Emacs will never happen. Robin's work was amazing, but at it's absolute height guile Emacs was still a slower and buggier version of regular Emacs. I am pretty certain a full guile Emacs would be better than current Emacs (guile is actually a very neat little VM with lots of cool optimisations going on), but that is not where the reality is.

As a guiler I want Emacs to be guile-based, but I totally understand the Emacs POV: guile is an external dependency with unsecure maintainership.

Post reply on HN