2009-11-02 11 views
19

Estoy aprendiendo Emacs Lisp y me encontré con esta publicación de hace una década diciendo que en algún momento Guile (Esquema) reemplazará a Emacs Lisp, o Emacs se reescribirá con Guile.Guile y Emacs?

https://web.archive.org/web/20081201143448/http://sanpietro.red-bean.com/guile/guile/old/3114.html

Me preguntaba si esto sigue siendo una posibilidad, y si los desarrolladores debería estar tratando de escribir Elisp con esto en mente? El objetivo original era que Guile fuera compatible con Elisp, pero parece que desarrollar Scheme es la mejor opción.

Respuesta

6

astucia y emacs, de nuevo - actualizado Emacs src, si no se utilizan hackeado Guile 23 Agos 2009

PS: notaba recientemente que mi primera comprometerse con el árbol de fuentes de Emacs relativa a este proyecto estaba en 1999-08-28, hace apenas diez años. No estoy seguro de si debería celebrar o estar deprimido el viernes.

http://lists.gnu.org/archive/html/guile-devel/2009-08/msg00163.html

+1

Veo que había un proyecto Google Summer of Code para hacer que el manejador Guile elisp: http://code.google.com/p/google-summer-of-code-2009-gnu/downloads/detail?name=Daniel_Kraft.tar .bz2 & can = 2 & q = –

+1

En 2012 va a haber otro GSoC relacionado con la interacción Guile-Emacs - http://www.google-melange.com/gsoc/proposal/review/google/gsoc2012/bpt/23002 –

+3

A partir del Agosto de 2014, la integración está casi completa, salvo para los casos límite, gracias a otro GSoC - http://www.emacswiki.org/emacs/GuileEmacs –

2

No me preocuparía demasiado al respecto. Hay un par de proyectos para usar Guile con Emacs, pero siento que no son compatibles con la línea principal. Como uno de los desarrolladores de uno de los proyectos observados, nadie cambiará a menos que su elisp existente funcione impecablemente en el nuevo motor, que es una tarea bastante alta.

No es que nunca suceda, solo ha estado 'en las nubes' durante algunos años.

+1

¿Unos años? Parece que está haciendo que el proyecto Perl 6 se vea bien. :-) Si tiene alguna información actual, publique. Sería bueno aprender más. –

+1

Solo soy un espectador interesado, he estado observando intermitentemente durante años. Como ilustran la publicación de @ elmarco y los comentarios subsiguientes, hay algunos esfuerzos activos. Es difícil saber si alguno de ellos llegará a la línea de meta. –

9

Debería ser posible después de Guile 2.0 se libera a utilizar Guile con Emacs. El prelanzamiento actual es compatible tanto con el ecmascript como con el esquema, y ​​aparentemente también existe una rama elisp, pero no he investigado. Una vez que Guile sea totalmente compatible con elisp, no debería ser demasiado difícil reemplazar el intérprete de elisp actual con Guile. La verdadera pregunta es si las personas van a reescribir sus personalizaciones y complementos en el esquema o simplemente continuar utilizando elisp. De todos modos, Guile 2.0 debería hacer que la posibilidad de un Guile Emacs esté más cerca de la realidad que cualquier otro desarrollo en los últimos 10 años.

2

El uso de una máquina virtual como parrot parece más interesante para el futuro que Guile, ya que Parrot VM puede manejar many different dynamic languages y cada idioma puede reutilizar lo que se ha desarrollado en otro idioma.

El trabajo queda por hacer es: conceptos y funciones

  • emacs adición de bajo nivel para Parrot VM (tipos elisp básicos como el tipo de tampón, ventana, marco ...)
  • la creación de una puerto de idioma elisp a Parrot VM.

Con estas funcionalidades, podría tener todos los códigos elisp heredados ejecutándose en Parrot VM sin problemas de portabilidad, y cualquier nuevo lenguaje podría ser desarrollado y reutilizado por cualquier lenguaje soportado por Parrot VM.

7

Guile 2.0.0 (publicado 2011-02-06) soporta Emacs Lisp.

Se puede cambiar en el repl así:

[email protected](guile-user)> ,language elisp 
Happy hacking with Emacs Lisp! To switch back, type `,L scheme'. 
[email protected](guile-user)> (eq 1 2) 
$1 = #nil 

cuanto a si/cuando alguien va a hacer algo de cirugía en Emacs para extraer elisp y soltar en Guile-en-modo elisp: la Guile 2.0.2 reference manual sugiere que este es el plan, pero aún no está listo:

Esperamos que con el tiempo implementación de Elisp de Guile será bueno suficiente para reemplazar Emacs propia implementación de Elisp.