Remix.run Logo
▲ TFNA 6 hours ago

On one hand, AI boosts Emacs development. On the other hand, as an Emacs user of 30 years, I have always felt that the number of people who deeply grasp Emacs Lisp and Emacs' internals is really small against the population of people merely using Emacs and lightly hacking their own setup, and I worry AI is not going to encourage any growth in that small elite that seems kinda important for Emacs' long-term future.

▲cyrialize 5 hours ago | parent | next [-]

This is a good point, but I do want to mention that I feel like in the past 5 years we've had lots of extremely popular packages that hook into Emacs internals instead of rolling out their own architecture.

For example, corfu [0] versus company [1]. Company works with capf, but you can also write your own backends for it (specific to company). Corfu also works with capf, but all backends are capf functions instead of a corfu specific backend.

Another good example is eglot [2] versus lsp-mode [3]. Eglot is actually packaged with Emacs now.

There's also other stuff, like vertico [4] (and others that are recommended to download) versus helm/ivy.

I also want to mention that packages that hook into Emacs more don't necessarily mean that they're better. From my POV it's more like you get a lot more things for free and the documentation you dive into will be Emacs specific instead of package specific. It all comes down to preference.

Vertico/Counsel/Orderless is very nice, but Helm and Ivy are fully featured (I always forget how much Helm has for you).

I use corfu, eglot, and vertico now. I have thought about going back to helm and company, especially since I was very familiar with company's backends for a long time.

[0]: https://github.com/minad/corfu

[1]: https://github.com/company-mode/company-mode

[2]: https://github.com/joaotavora/eglot

[3]: https://github.com/emacs-lsp/lsp-mode

[4]: https://github.com/minad/vertico

▲seanw444 3 hours ago | parent [-]

I was using Helm, lsp-mode, yasnippet, and the like for a long time. I switched to Eglot/Corfu/Vertico/Tempel. I much prefer the new wave.

▲bluGill 6 hours ago | parent | prev | next [-]

> the population of people merely using Emacs and lightly hacking their own setup

This is a good thing. Custom environments should be either minimal or upstream. Anybody should be able to sit down next to you and help you hack out a change. The more unusual/custom your environment is the less productive that is, and this more than balances out any possible gain you can make from custom setups. (don't forget to account for your cost to learn elisp and then make the changes!)

Somebody needs to make the correct setups. However most of us have better things to do.

▲TFNA 6 hours ago | parent [-]

I'm not advocating for making all (or even most) users spend so much time on internals that they don't get productivity gains. Rather, I'm concerned about maintaining, ensuring generational turnover, and healthily boosting the elite that the product depends on. It is no secret that a number of Emacs ecosystem core devs are middle-aged, and so the project is a few heart attacks or whatever away from losing the experience and competence that has sustained it so well.

▲skydhash 6 hours ago | parent [-]

Most of emacs is lisp. The actual C part is quite small considering the capabilities of the system. Lisp being what it is, it’s moslty about domain knowledge than language expertise.

▲jupitr 5 hours ago | parent [-]

I feel the lisp constructed on top needs significant language expertise. Lispy constructs of defvar, defconst, defcustom, alist, cl-loop etc. are quite extensively used in emacs - and need an understanding quite unique to Lisp. Of course, the domain then builds on top of this shared understanding of the contructs themselves.

I would say that loss of expertise in emacs-lisp is a significant loss, even if there continues to exist C-expertise globally.

▲skydhash 4 hours ago | parent [-]

There's a wealth of packages and the documentation for emacs-lisp is quite extensive. It's not some esoteric language. But what I'm talking about is that the code for the packages can be quite simple and readable.

▲iLemming 44 minutes ago | parent | prev | next [-]

> AI is not going to encourage any growth in that small elite

In practice we're seeing the biggest waves of development in years. r/emacs gets daily, daily! announcements of new packages. Many of them, if not most, are not some AI-sloped trash - they are very useful. Some package makers go above and beyond - even though vibe-coded, they still show good design decisions, proper tests, hand-written documentation. Canvas stuff most likely wouldn't be possible without LLMs.

▲torben-friis 6 hours ago | parent | prev | next [-]

>and I worry AI is not going to encourage any growth in that small elite

I wouldn't dismiss the help of lower friction of entry. Lots of recent Linux and neovim users due to how easy it is to debug an issue or edit a config now.

The larger the regular userbase, the more chances people gradually go deeper into the system.

▲hirvi74 6 hours ago | parent | prev [-]

I think that is part of the beauty of Emacs -- it is what one makes of it.