Neo Emacs – Emacs from the Future

(neomacs.org)

42 points | by giancarlostoro 2 hours ago

14 comments

  • nine_k 2 hours ago
    > Aiming for modern design, multi-threaded Elisp, 10x performance and 100% Emacs compatibility.

    I'm afraid that 100% compatibility may be very often at odds with multi-threaded elisp. So much in Emacs depends on global state :-/

    • thih9 2 hours ago
      Current status of the compatibility is[1]:

      > ~95%, closing the last gaps

      If coding with LLMs taught me anything, it’s that this last 5% can be “load-bearing”.

      [1]: https://github.com/eval-exec/neomacs#status

      • grim_io 2 hours ago
        That's where all the smoking guns are buried.
        • nickpeterson 1 hour ago
          That's why I use a belt and suspenders to pick them up.
    • dan-robertson 1 hour ago
      Most state is buffer-local rather than global. Note also that there is already some amount of multi-threading in elisp.

      One thing you could imagine is doing some kind of mvcc system so that if two tasks don’t interfere with each other, they can execute in parallel (and if not, abort one and rerun it sequentially).

      But maybe that still doesn’t work because all the things that should be run concurrently are using the same buffer and doing manipulations of it. You could imagine trying to make save-excursion introduce an opportunity for parallelism: split into a separate thread for the body as that thread is no longer modifying global cursor state (in some sense). Don’t let two threads write to the same buffer for concurrent tasks that should appear sequential, but do allow them to read in parallel (surely most things are merely reading).

      However I’m not sure you actually need all that cleverness. I think you could have some combination of:

      - tools to make multithreaded elisp more viable

      - manual attention to improve major sources of slowness by introducing parallelism (eg font-lock, rendering, autocomplete, indentation). A stupid thing could be precomputing (in the background) what would happen in the user pressed RET (or TAB) and then being able to execute it sooner if they press that key.

  • whois 2 hours ago
    Interesting interesting. I'm huge into Emacs and have felt like Emacs has needed a Neovim sort of moment for a while now. A lot of the modern features you'd expect out of an IDE are bad and slow in Emacs rn due to threading and pretty core issues to Emacs (so I cope and say I don't need autocomplete).

    But also suspicious of anything this AI generated which touts rust like this.

    • jmclnx 1 hour ago
      >I'm huge into Emacs and have felt like Emacs has needed a Neovim sort of moment

      That happened before with Xemacs. I saw somewhere Xemacs development has been restarted.

  • smy20011 2 hours ago
    Seems fully vibe coded :(
    • EgregiousCube 2 hours ago
      Appears to be further along than anybody's ever gotten with a multi-threaded emacs port. If that's what vibe coding gets us, three cheers for vibe coding!
      • timacles 1 hour ago
        I just cant imagine anything vibe coded being maintained for more than a few months.

        The moment random bugs start hitting and fixing the bugs starts breaking other things, no one is going to want to contribute.

        Its all going to devolve into a slop fest that takes more and more effort to make incremental progress

    • quasarj 2 hours ago
      I no longer see an issue with that, assuming it can be tested to prove it works. In this case, it's being tested (or well, claims to be) against real Emacs, which should be all that's needed.
      • otabdeveloper4 2 hours ago
        > claims to be

        Yes, quite the smoking gun of a load-bearing phrase.

    • pkghost 2 hours ago
      "Emacs, rewritten in Rust — unleashed on the GPU, fixing what 40 years of C never could."
      • bitwize 1 hour ago
        "Now I see the whole picture. The Emacs Lisp interpreter lock bungs no cake. The buffer-pruning-time crenellation is a glaze which conflicts with the cthulhu fhtagn peripatetic saxophone layer; the result is not cromulent. Three pounds of VAX. This has now been fixed."
    • convolvatron 2 hours ago
      general issues aside, for me one of the issues with emacs is that for historical reasons there is a cut between elisp and C that's really high up and pretty ragged. ideally a large composable lisp project like emacs would have a very accessible continuum between the surface and the underpinnings.

      so I don't think one can achieve that by maintaining 100% compatibility. a much smaller base system build with better semantics that was notionally compatible would be something I would be really excited to contribute to.

      • cmrdporcupine 2 hours ago
        Yeah, that's "lem" really. Though in that case it's Lisp all the way down apart from the native bits of the rendering layers.
        • whois 1 hour ago
          I keep meaning to check out Lem. It just pains me having to get my setup set up all over again. But, long term Lem is probably the move.
        • stackghost 1 hour ago
          It’s a better lisp, too. Elisp really sucks and is my least favourite part of emacs, which I use daily.
  • puszczyk 2 hours ago
    the webpage fills vibecoded in the worst way tbh; i don't think that's attractive to the current gen of emacs users

    maybe it targets net new users?

    • nosioptar 1 hour ago
      I'm interested in a multi threaded emacs.

      This landing page made sure I lost interest in this attempt.

      JFC, who wants animations in their editor?

      Also, I set prefers reduced motion on my browser. Pages that are filled with useless animations in spite of my preference tells me the dev is either incompetent as they cannot handle basic accessibility or an asshole because they just don't care.

    • DonHopkins 1 hour ago
      It's ironic that a community that uses a program originally developed at the MIT AI Lab, extensible in the traditional programming language of AI, would hate AI.

      Richard Stallman prefers to call AI "Pretend Intelligence".

      https://github.com/SimHacker/moollm/blob/main/designs/PRETEN...

      Richard Stallman proposes the term Pretend Intelligence (PI) for what the industry calls “AI”: systems that pretend to be intelligent and are marketed as worthy of trust. He uses it to push back on hype that asks people to trust these systems with their lives and control.

      From his January 2026 talk at Georgia Tech:

      https://youtu.be/YDxPJs1EPS4?t=641

      "So I've come up with the term Pretend Intelligence. We could call it PI. And if we start saying this more often, we might help overcome this marketing hype campaign that wants people to trust those systems, and trust their lives and all their activities to the control of those systems and the big companies that develop and control them." — Richard Stallman, Georgia Tech, 2026-01-23. Source: YouTube (full talk) — "Dr. Richard Stallman @ Georgia Tech - 01-23-2026," Alex Jenkins, CC BY-ND 4.0; transcript in video description.

  • yunfei 1 hour ago
    Lost me with broken "Watch Demo" button
    • dismalaf 42 minutes ago
      Sponsor button works though ;-)
  • jchw 2 hours ago
    I've gone from being blown away by what LLMs could do with web design (I mean, it's impressive, especially what it does purely without vision...) to wishing it couldn't. Everything has become "same"y in a way that is hard to describe, kinda like AI generated images. Panda riding a unicorn? Impressive the first time. 1000 uncanny piss filter Pixar images later, you are begging for mediocrity to come back.

    Not that the README is any better. It's just a long string of Claudisms. Fuck.

    "Don't you ever get bored of pointing out that everything is AI slop?" Yes. I am very bored of pointing this out. I'll let you know when getting bored of it fixes the problem. I'm sorry if you think slop that will likely be unmaintained in a month and can be done even better by next month's model releases anyways is worth taking up a massive chunk of the HN frontpage forever, but I just don't agree.

    • MichaelDickens 1 hour ago
      I feel like we need some version of "increase the temperature" that works at a macro scale instead of on individual tokens.
      • efskap 1 hour ago
        There's an interesting prompting technique for this that asks the model to start with a random string that is then manipulated into the answer: https://pub.sakana.ai/ssot/
    • snmx999 1 hour ago
      The README is actually much better. Before AI it was three sentences or a placeholder template and you were complaining how nobody writes decent documentation. Now that the README actually describes what the project is all about you don't read it because "it's AI slop".
  • royal__ 2 hours ago
    It's hard to take this seriously when it has wonky Claude website design. Rewriting emacs in Rust also feels like a nonsensical task.
    • vatsachak 2 hours ago
      It's not nonsensical, but if you were writing emacs in rust, you hopefully would use a typed language instead of elisp
      • dismalaf 1 hour ago
        Why? There's no point having a typed config/scripting language...
        • vatsachak 41 minutes ago
          You're assuming that the scripts are small.

          e-lisp code is massive!

  • tommica 2 hours ago
    Oh that looks so pretty! I've wanted an excuse to try out emacs in the first place, and this could be it!
    • bch 1 hour ago
      > I've wanted an excuse to try out emacs in the first place[...]

      This isn't the excuse - just try Emacs! I've gone through periods where I really wanted to level-up my $EDITOR-fu, and just jumping in is what I did. Compared to so many other decisions, this is such a low-barrier, low-cost decision, there's no reason to not just do it. If it's stalling your development speed, jump back to vi or VSCode, or whatever. Don't want to stick with Emacs? Uninstall and forget it was ever there.

      For my editor explorations (vi, emacs, ex), I was strict with myself and used $EDITOR exclusively for 4 or 8 weeks (I forget which) - which sometimes just turned into years.

      I'm not deep into Emacs culture these days, but I'm hard-pressed to understand why one wouldn't just go canonical GNU Emacs rather than some fresh "revolutionary" Emacs - you'll have your mind blown regardless, without the potential bugs and lack-of-history/community which come with some new-hotness interpretation of a standard that is already fit-for-purpose.

    • bigfishrunning 2 hours ago
      Please just try out traditional Emacs, I'm not sure this will paint a fair picture.
  • ranguna 1 hour ago
    The watch demo button doesn't work for me
  • Svoka 2 hours ago
    Does the "Watch Demo" button do anything?
  • vatsachak 2 hours ago
    Watch demo button on the website doesn't work.

    I mean gnu-emacs is already quite snappy in Wayland mode.

    • bigfishrunning 2 hours ago
      the "performance" link at the top also doesn't lead anywhere...
  • veqq 2 hours ago
    Why not... Lem?
    • dismalaf 1 hour ago
      Lem's focus seems to be on being an "emacs" in and for Common Lisp. Lem throws away any attempts at compatibility with GNU Emacs.

      This is trying to be compatible with GNU Emacs.

      • cmrdporcupine 43 minutes ago
        > Lem throws away any attempts at compatibility with GNU Emacs.

        That depends on what you mean by compatibility.

        Keybindings and conventions and the like are basically the same.

        I'm not actually convinced at this point on the value of a lot of the extant elisp out there.

        • dismalaf 39 minutes ago
          > That depends on what you mean by compatibility.

          Emacs Lisp...

          > I'm not actually convinced at this point on the value of a lot of the extant elisp out there.

          I agree but lots of people probably don't.

  • jmclnx 1 hour ago
    Emacs written in rust.
  • chrysoprace 2 hours ago
    With neovim's cult following I figured it was only a matter of time before somebody made a similar rewrite for Emacs, even if it does smell of vibe-coding based on the README.

    I don't see any notes in the README about alternative scripting engines, elisp was always the main thing that turned me off from emacs. Does anybody know if they plan to add something like Lua?

    • bitwize 1 hour ago
      Emacs-ng embeds JavaScript or TypeScript or something and a web engine for UI. But then I really don't see the point. You're just about halfway to Visual Studio Code, so why not just use that?