4 ms·
I wonder how difficult it would be to port elisp to Common Lisp and then get GNU Emacs running hosted in SBCL or whatever. I really like the idea of my editor r
by User23 5y ago
I wonder how difficult it would be to port elisp to Common Lisp and then get GNU Emacs running hosted in SBCL or whatever. I really like the idea of my editor running in the image.
- dreamcompiler 5y agoIt's been done in the form of an Emacs clone called Hemlock. Lispworks uses it for their IDE although they don't make enough of the source available to fully customize it. Clozure Common Lisp also uses Hemlock for their IDE on the Mac and its source is all in the box. I don't think that's exactly what you asked, however, and I agree that a true Emacs running entirely on CL would be preferable.
- math-dev 5y agoSource code of LW editor is mostly available. I’ve done some extensive modifications to it (implemented VIM mode), but these days I’ve moved back to Emacs- just something I prefer more
- dreamcompiler 5y agoSo have I but that "mostly" is my problem. Eventually I hit a wall beyond which I could not modify the editor's behavior.
- User23 5y agoI believe the Nyxt project is interested in adding editing at some point. There’s also Lem which is a terminal based Emacs. GNU Emacs has by far the strongest community and ecosystem though.
- fiddlerwoaroof 5y agoYou might be interested in: https://github.com/cxxxr/lem https://github.com/cxxxr/lem For a terminal editor, it’s impressively usable.
- math-dev 5y agoIn principle not too hard, in practice the topic comes up every few months and nobody has done it yet
- mikelevins 5y agoDepends on what you mean. If you just mean writing an implementation of Emacs (or something Emacs-like) in Common Lisp, that's not very hard, and it's been done a few times. See, for example, Lem[1] and Hemlock[2]. Heck, I wrote one for MacOSX in about 2001 or 2002. If you mean a drop-in replacement for GNU Emacs, that's a lot harder. Besides the UI and the editing infrastructure, you need to write a bug-compatible implementation of GNU's elisp, or you lose the whole GNU Emacs ecosystem. That ecosystem is most of its practical appeal. That's a whole bunch of work. [1] https://github.com/40ants/lem-pareto/blob/master/lem-pareto-mode.lisp https://github.com/40ants/lem-pareto/blob/master/lem-pareto-... [2] https://en.wikipedia.org/wiki/Hemlock_(text_editor) https://en.wikipedia.org/wiki/Hemlock_(text_editor)