They are about halfway through, give them a hand!
https://github.com/remacs/remacs/wiki/Progress
If every C/C++ programmer/member of the Rust Evangelism Strikeforce here on HN help port a function, we would have a Rust Emacs in under a month.
C'mon everyone, the remaining code is pretty simple and straightforward:
https://github.com/remacs/remacs/tree/master/src
Just mechanical translation to Rust. ONE FINAL SPRINT, and we will be done. The hard work of setting up the tooling and macros are already finished. Many here are happy to moan and complain about Electron infecting everything. Channel your anger into this project! Just help port one function, this isn't even leet coding level of difficulty. If you believe yourself to be a great software engineer, then lend a hand. Don't want Electron editors like VS Code and Atom to be the only game in town 5 years from now? Help translate a couple lines now. It's literally a single docker pull to setup the dev env.
Low hanging fruits:
https://github.com/remacs/remacs/blob/master/src/indent.c
Tl;Dr: like Leftpad but more ugly.
http://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/emacs-l...
DFAs for regular expressions use exponential memory for regular expression size (also exponential time to compile them to DFAs). Try that for the regular expressions in the link above. There is no way to make regular expressions fast.
I use Emacs every day. Never had a problem with slow syntax highlighting when working on regular source code files.
I don't feel regexs are bottlenecks in everyday use.
What needs to be made faster is ELisp, the parts of Emacs not implemented in C basically. Is remacs addressing that as well?
I suppose one could argue writing it in clojure would make it portable to both the jvm and any javascript engine but what clojure project of significant complexity doesn't break out into the host language from time to time
What compilers have been written so far in idiomatic clojure?
EDIT: since I'm thinking about it could anyone imagine debugging a compiler in clojure? Talk about stacks on stacks on stacks...
I don't think the parent meant to implement an elisp interpreter in Clojure. I thought they meant to build an Emacs like editor in Clojure. Similar to this now abandonned project: https://github.com/hraberg/deuce
There'd be no point in re-writing an Elisp compiler/interpreter in Clojure over its current C implementation apart maybe for if you think it be nice for you to work in Clojure instead of C when coding on it.
That being said a clojure editor could be pretty fun, the oy downside being writing native widgets for a gui. I hardly know anyone who uses emacs in a shell if they can help it, and i know far more people who would prefer to use a shell inside of emacs instead.
Additionally all modern JVM implementations have a JIT cache as well.