[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: emacs roadmap

From: Noah Lavine
Subject: Re: emacs roadmap
Date: Sun, 16 Dec 2012 17:37:31 -0500


I know very little about Emacs development, but I'm a Guile developer, so let me see if I can explain that situation: Guile used to be an embeddable implementation of the Scheme programming language, and there was a plan to use Guile in Emacs and rewrite everything in Guile. Guile (since 2.0) is now an embeddable VM and a collection of compilers to that VM. It can run Elisp in the same way that Emacs can. There has been talk of using the Guile VM in Emacs.

As for realism - it's certainly a realistic possibility technically. The work would mostly be in the C part of Emacs - changing lisp.h, the interpreter, and similar things. The low-level Elisp that implements the compiler would also change, but almost all Elisp would be untouched. There would be some technical advantages, and I can think of one possible technical downside. (I'll write more about those if anyone's interested.)

But I think the biggest question is sociological - do the Emacs developers *want* to use Guile? Is the benefit of work-sharing worth the loss of some amount of control over their language implementation? I can't answer that.

I hope this is helpful,
Noah Lavine

On Sun, Dec 16, 2012 at 5:25 PM, Tony Day <address@hidden> wrote:
Is there a long term roadmap for emacs research and development that
someone could point to?  Having done my homework I find nothing out
there except rumour and myth.  For instance:

- Is multi-threading coming to emacs 25?
- Is there realistic support for replacing elisp with guile?  Is that
  considered possible even?
- If elisp is the future, what type of changes are envisaged?
  - double escape regex fix?
  - lexical closures (to support no namespaces)?
  - first-class print for functions?

More generally, when can we get turtles all the way down and enjoy the
return of the symbolic machine?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]