我正在学习Emacs Lisp,我遇到了这个十年前的帖子,说在某些时候Guile(Scheme)将取代Emacs Lisp,或者Emacs将被Guile重写.
https://web.archive.org/web/20081201143448/http://sanpietro.red-bean.com/guile/guile/old/3114.html
我想知道这是否还有可能,并且开发人员是否应该尝试用这个来编写Elisp?最初的目标是让Guile向后兼容Elisp,但似乎开发Scheme是更好的选择.
在Guile 2.0发布后,应该可以将Guile与Emacs一起使用.目前的预发布支持ecmascript以及方案,显然还有一个elisp分支,但我还没有调查过.一旦Guile完全支持elisp,用Guile替换当前的elisp解释器应该不会太难.真正的问题是人们是否会在计划中重写他们的自定义和附加组件,或者只是继续使用elisp.无论如何,Guile 2.0应该使Guile Emacs的可能性比过去10年中的任何其他发展更接近现实.
Guile 2.0.0(2011-02-06发布)支持Emacs Lisp.
您可以像这样切换repl:
scheme@(guile-user)> ,language elisp Happy hacking with Emacs Lisp! To switch back, type `,L scheme'. elisp@(guile-user)> (eq 1 2) $1 = #nil
至于是否/何时有人要对Emacs进行一些手术以提取elisp并降低Guile-in-elisp模式:Guile 2.0.2参考手册表明这是计划但尚未准备好:
我们希望最终Guile对Elisp的实施能够取代Emacs自己的Elisp实现.
guile和emacs,再次 - 更新了Emacs src,使用非黑客Guile,2009年8月23日
PS:我最近注意到我第一次提交与该项目相关的Emacs源代码树是在1999-08-28,仅仅十年前.我不确定周五是否应该庆祝或沮丧.
http://lists.gnu.org/archive/html/guile-devel/2009-08/msg00163.html