Что ближе всего к Слизи для Схемы? - PullRequest
43 голосов
/ 21 сентября 2008

Я делаю большую часть своей разработки в Common Lisp, но бывают моменты, когда я хочу переключиться на Scheme (при чтении Lisp в Small Pieces , когда я хочу играть с продолжениями или когда например, хочу написать сценарий в Gauche). В таких ситуациях моим основным источником дискомфорта является то, что у меня нет слизи (да, вы можете называть меня наркоманом).

Что является ближайшим аналогом Схемы для Слизи? В частности, меня больше всего интересует:

  • Интеграция с Emacs (этот момент очевиден;))
  • Достойное завершение табуляции (в идеале, c-w-c-c TAB должен расширяться до продолжения вызова с текущим). Это может быть даже на основе таблицы символов (т. Е. Не нужно сразу замечать функцию, которую я определил в let).
  • Подсказка аргумента функции в минибуфере (если я набрал (map |) (позиция курсора обозначена |)), я бы хотел видеть (map predicate . lists) в минибуфере
  • Отправка бланков переводчику
  • Интеграция с отладчиком.

Я упорядочил элементы по убыванию важности.

Мои реализации схемы выбора:

  • MzScheme
  • Ikarus
  • Гоши
  • Bigloo
  • Куриное

Было бы замечательно, если бы он работал хотя бы с ними.

Ответы [ 8 ]

16 голосов
/ 21 сентября 2008

В каталоге contrib SLIME, похоже, есть реализации SWANK для MIT Scheme и Kawa.

9 голосов
/ 12 марта 2015

Гейзер обеспечивает отличную среду для Схемы. Последняя версия теперь также может взаимодействовать с Схемой Чез * , Схема Тиби , Схема курицы , а также с этой старой резервной Схемой MIT , в дополнение к Guile и Racket . Я бы предложил установить его через Melpa , специально для того, чтобы последняя версия обрабатывала гораздо более широкий выбор REPL.

8 голосов
/ 24 сентября 2008

Вы также можете считать Схему завершенной:

http://www.emacswiki.org/cgi-bin/wiki/SchemeComplete

Это в основном обеспечивает завершение табуляции.

7 голосов
/ 25 сентября 2008

Комментатор сказал: «DrScheme IDE имеет привязки клавиш emacs», и это высоко ценимая IDE со многими функциями, которые вы явно перечислили.

Кроме того, режим схемы для Emacs предоставляет некоторые функции SLIME - встроенный REPL, возможность отправлять формы в этот REPL и загружать целые файлы. Насколько я знаю, в общем случае для перечисленной схемы нет эквивалента для таких вещей, как удаленное подключение к работающему образу (по сравнению со схемой repl в буфере Emacs) или интеграция с отладчиком.

6 голосов
/ 04 сентября 2011

Вы можете использовать Цыпленок Схема со слизью, используя курицу-хвостовик.

Я бы посоветовал взглянуть на режим geiser , но сейчас он поддерживает только Racket и Guile, которых я не вижу в вашем списке.

6 голосов
/ 04 ноября 2008

Для своей работы с mzscheme я обычно использую cmuscheme + quack, которые обеспечивают почти то, что мне нужно во время разработки.

Bigloo поставляется с очень мощным режимом пчелы.

А для гауча вы можете использовать пакет GCA, который обеспечивает завершение имен, отображение описаний функций и вставку шаблонов кода

Обновление : я опубликовал статью об интеграции Scheme + Emacs на моем сайте

6 голосов
/ 21 сентября 2008

Ну ... я бы сказал Слизь для схемы - самая близкая вещь к Слизи для схемы;)

4 голосов
/ 23 сентября 2008

Я не использовал его, но вы можете попробовать Кряк с mzscheme.

SLIME довольно сложно победить. В конце SWANK происходит много милости.

...