19 comments

  • nine_k 1 day 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 1 day 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 1 day ago
        That's where all the smoking guns are buried.
        • nickpeterson 1 day ago
          That's why I use a belt and suspenders to pick them up.
    • dan-robertson 1 day 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 1 day 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 day 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 1 day ago
    Seems fully vibe coded :(
    • EgregiousCube 1 day 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 day 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

        • rayiner 1 day ago
          Have you looked at the code before rendering judgment? It seems pretty readable and well-structured: https://github.com/eval-exec/neomacs/tree/main/crates/neomac...

          Emacs, meanwhile, has a 50,000 line file that contains its display and redisplay logic: https://github.com/emacs-mirror/emacs/blob/master/src/xdisp..... (It's actually a pretty readable well-commented file all things considered, but famously difficult to hack on.)

          • bitwize 16 hours ago
            That's descended from its terminal escape-sequence optimizer, the bit of code that transforms one screen state into another screen state in the least number of terminal commands possible. (That display code was later updated to support graphical output like X11 by treating it as sort of a special case of a terminal.)

            I think I'd rather have that than the state of the art in "modern" TUIs, which is to do the opposite and treat the terminal as a special case of React canvas, redrawing the whole damn thing every time there is a keystroke or other action by you or the program. You can see Claude Code redraw itself all the time; it's maddening. And the program would absolutely be unusable on, say, a 9600bps connection, whereas Emacs could still get by on that. This is from the company that retains the best and brightest programmers, and will have self-improving runaway genius AI by Christmas, for realsies this time.

        • micromacrofoot 1 day ago
          human code gets that way too, it just takes longer
    • quasarj 1 day 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 1 day ago
        > claims to be

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

        • quasarj 21 hours ago
          Sure, but you can check yourself if you're worried about it.
    • pkghost 1 day ago
      "Emacs, rewritten in Rust — unleashed on the GPU, fixing what 40 years of C never could."
      • bitwize 1 day 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 1 day 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 1 day 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 day 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.
        • hollerith 20 hours ago
          I've never gotten lem to display anything readable in a browser tab over 2 tries separated by 6 months. (I didn't try the terminal front end.)
        • stackghost 1 day ago
          It’s a better lisp, too. Elisp really sucks and is my least favourite part of emacs, which I use daily.
  • puszczyk 1 day 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?

    • DonHopkins 1 day 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.

      • neutronicus 8 hours ago
        RMS aside, there are a fair number of AI enjoyers among the emacs community.
    • nosioptar 1 day 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.

  • robert-zaremba 23 hours ago
    In my 20 years living inside Emacs, the running joke has always been that it's a great operating system lacking only a good text editor. With Neomacs bringing a GPU-accelerated display engine, and WebKit to the table... it looks like our operating system finally got a modern compositor. On top of that multithreading! (so some cache ops won't pause the editor!)

    Jokes aside, this is exactly the kind of mad-science evolution Emacs needs, rather than being hard-blocked by 1980s terminal-era C code.

    I'm curious how much of this project is done by AI? PS: kudos for doing it, I will definitely support it!

  • jchw 1 day 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 day 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 day 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 day 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".
      • jchw 9 hours ago
        > you were complaining how nobody writes decent documentation

        They still don't.

        > Now that the README actually describes what the project is all about you don't read it because "it's AI slop".

        Going from no documentation to very bad documentation is closer to a lateral move.

        I do think repos with only AI slop docs should probably just delete them. They are absolutely worse than nothing in most cases.

  • yunfei 1 day ago
    Lost me with broken "Watch Demo" button
    • dismalaf 1 day ago
      Sponsor button works though ;-)
  • royal__ 1 day 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 1 day ago
      It's not nonsensical, but if you were writing emacs in rust, you hopefully would use a typed language instead of elisp
      • neutronicus 8 hours ago
        If you're re-writing emacs at all, it's because you believe that a Lisp interpreter is the best way to extend a text editor. Or, at the very least, you want to execute pre-existing elisp.

        I can see moving some core functionality currently implemented in elisp into Rust (or whatever typed intermediate implementation language). But there is a cost to having stuff in the core - user can't step into C functions with the elisp debugger.

        • vatsachak 5 hours ago
          Given how fast computers are these days there is probably not much overhead in having emacs run as the interpreter for an incrementally compiled language with HM types
      • dismalaf 1 day ago
        Why? There's no point having a typed config/scripting language...
        • vatsachak 1 day ago
          You're assuming that the scripts are small.

          e-lisp code is massive!

          • kazinator 8 hours ago
            Where is the fire? Is the Emacs ecosystem collapsing because of type errors undiagnosed when .el files are scanned?
            • vatsachak 5 hours ago
              I mean emacs has way more bugs than modern editors. Types would help you fix that and let you optimize code more since they help with "proving" that your code is correct.

              I feel like emacs could be way better if e-lisp was typed but I write Rust for a living and Haskell/Lean for fun so maybe I'm biased

  • tommica 1 day 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 day 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.

      • jrootabega 23 hours ago
        I disagree somewhat. It helps to have some kind of exciting, exotic, whimsical, or challenging context to try it out in. Like how they say you learn a technology best with a project. "Just" trying it out can be a flavorless and easily dropped experience. But I agree with the other poster that this is not a great project for learning Emacs as it currently exists.
    • bigfishrunning 1 day ago
      Please just try out traditional Emacs, I'm not sure this will paint a fair picture.
  • neutronicus 8 hours ago
    Does it run Spacemacs?
  • eastwd 21 hours ago
    Interesting.

    I'm pretty jaded these days, so I decided to compile this and give it a go.

    I am actually a little surprised.

    So far, all of my configuration and packages have just worked out of the box. Eglot (LSP), Treesitter, evil, themes configuration and all my custom elisp and just kind of work. Brownie ponits there.

    Unfortunately, the developer has chosen to; for lack of a better phrase; gone batshit insane with cursor and window animations. The homepage looks nothing like what's OOTB either, so quite misleading to be honest.

    Otherwise, pretty decent job, feels smooth and will check in another year.

  • stschaef 20 hours ago
    Do you have any evidence that neoemacs witnesses any speedup? It's a neat idea but I don't quite get why I'd want this without seeing some evidence

    I've also considered the possibility of a Rust rewrite of emacs, but after doing some more digging it seems like it may not be worth the effort. The remacs project seems to have been abandoned. I think they hit diminishing returns

    Moreover, this ready like AI slop

  • Svoka 1 day ago
    Does the "Watch Demo" button do anything?
  • vatsachak 1 day ago
    Watch demo button on the website doesn't work.

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

    • bigfishrunning 1 day ago
      the "performance" link at the top also doesn't lead anywhere...
  • veqq 1 day ago
    Why not... Lem?
    • oliverchan2024 14 hours ago
      Too hard to use.
    • dismalaf 1 day 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 1 day 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 1 day 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.

          • cmrdporcupine 23 hours ago
            In a way sad to say it but these days if I'm missing some functionality I just ask a clanker to write it and it's done in a few minutes.
  • ranguna 1 day ago
    The watch demo button doesn't work for me
  • jmclnx 1 day ago
    Emacs written in rust.
  • chrysoprace 1 day 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?

    • robert-zaremba 23 hours ago
      what's wrong with elisp? The runtime is really well integrated in Emacs! Note: AI is good at writing all lips dialects!
      • chrysoprace 22 hours ago
        Oh I'm just not a lisp fan, and with it being a bespoke language for Emacs it has the same issue as VimScript: you have to learn a language just for configuring your editor. With something like Lua, it's simple to learn and I can use that knowledge for things other than just configuring my editor.
    • bitwize 1 day 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?
  • robert-zaremba 40 minutes ago
    [flagged]