Guile и Emacs? - PullRequest
       44

Guile и Emacs?

20 голосов
/ 02 ноября 2009

Я изучаю Emacs Lisp, и я наткнулся на эту десятилетнюю статью, в которой говорится, что в какой-то момент Guile (Схема) заменит Emacs Lisp, или Emacs будет переписан с Guile.

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

Мне было интересно, если это все еще возможно, и разработчики должны пытаться написать Elisp с учетом этого? Первоначальная цель заключалась в том, чтобы Guile был обратно совместим с Elisp, но кажется, что разработка Scheme - лучший выбор.

Ответы [ 6 ]

9 голосов
/ 11 ноября 2009

После выхода Guile 2.0 станет возможным использовать Guile с Emacs. Текущий предварительный релиз поддерживает ecmascript, а также схему, и, очевидно, есть ветка elisp, но я не рассматривал ее. Как только Guile полностью поддерживает elisp, заменить текущий интерпретатор elisp на Guile не составит труда. Реальный вопрос заключается в том, собираются ли люди переписывать свои настройки и дополнения в схеме или просто продолжать использовать elisp. Несмотря на это, Guile 2.0 должен сделать возможность Emacs Guile намного ближе к реальности, чем любая другая разработка за последние 10 лет.

8 голосов
/ 06 июля 2011

Guile 2.0.0 (выпущено 2011-02-06) поддерживает Emacs Lisp.

Вы можете переключиться на репле следующим образом:

 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 предполагает, что это план, но это еще не готово:

Мы надеемся, что в конечном итоге реализация Elisp будет хорошей достаточно заменить собственный Emacs реализация Elisp.

7 голосов
/ 03 ноября 2009

guile и emacs, опять же - обновленный Emacs src, использующий не взломанный Guile , 23 августа 2009

PS: я недавно заметил, что мой первый передать в исходное дерево Emacs относящийся к этому проекту был на 1999-08-28, просто стесняюсь десять лет назад. Я не уверен, должен ли я праздновать или быть в депрессии в пятницу.

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

4 голосов
/ 24 июля 2010

В последнее время по этой теме было несколько интересных дискуссий:

2 голосов
/ 23 июля 2010

Использование виртуальной машины наподобие parrot кажется более интересным для будущего, чем Guile, поскольку Parrot VM может обрабатывать множество различных динамических языков , и каждый язык может использовать то, что было разработано на другом языке.

Работа, которую предстоит сделать, это:

  • добавление низкоуровневых концепций и функций emacs в виртуальную машину Parrot (базовые типы elisp, такие как тип буфера, окно, фрейм ...)
  • создание языкового порта elisp для виртуальной машины Parrot.

С такими функциональными возможностями вы можете иметь весь унаследованный код elisp, работающий на виртуальной машине Parrot, без каких-либо проблем с портированием, а новый код можно разрабатывать и использовать на любом языке, поддерживаемом виртуальной машиной Parrot.

2 голосов
/ 03 ноября 2009

Я бы не слишком волновался об этом. Есть несколько проектов для использования Guile с Emacs, но я чувствую, что они не поддерживаются основной линией. Как заметил один из разработчиков одного из проектов, никто не переключится, если все их существующие elisp безупречно работают в новом движке, что является довольно сложной задачей.

Не то, чтобы это никогда не случалось, это было просто "в облаках" в течение нескольких лет.

...