
Emacs-jit: Emacs with an Emacs Lisp JIT compiler - kruhft
https://github.com/burtonsamograd/emacs-jit
======
hellofunk
This is interesting, but I have to be honest: if you are using emacs lisp to
do raytracing, then wow.

I love emacs and its extensibility but it already is so extremely fast with
zero latency for the normal things emacs is used for: editing. Even very
complex editing operations with plugins that do all kinds of wild things are
you type are as fast as I can blink. In what normal emacs use cases is a JIT
needed?

~~~
gravypod
> if you are using emacs lisp to do raytracing, then wow.

There's a great old saying: Emacs is a great operating system, it just needs a
good text editor.

~~~
TeMPOraL
Indeed, Emacs is a great example of how a productivity-oriented OS should look
like - giving you a _very powerful_ and efficient set of user-interface
operations, and then letting you use them _everywhere_ , no matter the task
you're doing.

Pretty much the exact opposite of a normal OS - hence many of us in Emacs
world do treat our editor as an OS, and prefer to do everything within it.

~~~
gravypod
If you are one of those die-hard emacs fans I'd love to hear how you would
feel about using EXWM. It's an emacs window manager for X.

Screenshots found here:
[https://github.com/ch11ng/exwm/wiki/Screenshots](https://github.com/ch11ng/exwm/wiki/Screenshots)

~~~
wcummings
Unnecessary, you can split windows in Emacs, view PDFs in Emacs, run a shell
in Emacs, browse directories in Emacs. The only thing you can't do in those
screenshots is run Firefox, and I'm happy to alt-tab between my fullscreen
Emacs session and my fullscreen FF session

------
NarcolepticFrog
Could an approach like this (with caching the compiled binaries) potentially
be a solution to the emacs dumping problem?

~~~
kruhft
As the author of this patch, and someone that's followed the dumping problem
as well on the list, and someone that follows emacs development I would say
that...no, this is not a portable solution to the problem that would be
accepted.

libjit does offer the ability to compile the code to a static vector that can
be written to disk but that would then put machine specific code in the output
.elc files making them unportable.

Also, at this state with the JIT it's not possible yet to fully compile all of
the emacs bytecode; there are still some lurking bugs that need to be squashed
that I'll (or someone else) hopefully have time to look into in the future to
get this to 100%.

