LINUX.ORG.RU

Как работать с LISP в Emacs?

 , , , ,


0

1

Возникло желание попробовать программирование на LISP. Но я никак не могу понять - вот открыл я два буфера, в одном код на LISP, а в другом - пока что ничего. Что нужно в тот другой буфер ввести, чтобы работать с LISP-ом. Что нужно установить? Извиняюсь, если это тупой вопрос.


Установи slime (в *emacs-dir*/site-lisp/slime/) простым копированием, пропиши автозагрузку slime в файл .emacs:

(require 'slime)
(slime-setup '(slime-scratch slime-fancy slime-asdf slime-references))

- в одном буфере редактор, во втором slime. Азы работы - 2-я глава PCL.

alienclaster ★★★
()

Для начала советую установить LispWorks Personal Edition. Там все просто и понятно. Потом можно и emacs попробовать со slime.

dave ★★★★★
()
Ответ на: комментарий от dave

LispWorks Personal Edition

Ну зачем же людей сразу к проприетари приучать? :) Тем более, что в мире лиспа, в отличие от многих других областей, есть более чем серьезные свободные реализации, достаточно простые для освоения.

buddhist ★★★★★
()
Ответ на: комментарий от buddhist

Просто мне очень нравится LW. Установил, и все работает. Интерфейс минималистический и очень приятный. Все по делу. Удобные кнопки компиляции, инкрементальной компиляции, макроэкспенда. Всегда под рукой REPL (он там Listener). Хороший отладчик и профайлер. Только последним мало пользовался.

Emacs+slime тоже хорошая вещь. Особенно мне нравится такая фича, как удаленный сеанс REPL. Но только LW все же будет проще, особенно для новичка.

dave ★★★★★
()

Возможно после таких вопросов, тебе стоит удалить емакс и никогда не прикосаться к лиспу ;]

grouzen ★★
()
Ответ на: комментарий от alienclaster

Спасибо

Я, по-привычке пытался найти slime в репозитории fedora. Как оказалось, его нужно просто скачать было :) и скопировать. Именно по этой книжке я и решил изучить LISP. Эти настройки не помогли, но там был readme. Там:

    (add-to-list 'load-path "~/.emacs.d/site-lisp/slime/")  ; директория установки slima-а
    (setq inferior-lisp-program "/bin/clisp") ; бинарный файл Common Lisp
    (require 'slime) ; подключение slime
    (slime-setup) ; не знаю, для чего, выдало nil, но и без этого работает
Но возникает вопрос: мне, для подключения файла, необходимо при каждом запуске M-x (load «~/test.lisp»). Возможно ли автоматически подключать открытый файл?

wwju
() автор топика
Ответ на: комментарий от alienclaster

Не понял

программирование на LISP

Я, извиняюсь, не понял - почему меня троллем посчитают из-за использования этого сочетания?

wwju
() автор топика
Ответ на: комментарий от grouzen

Не будьте столь пессимистичны :)

wwju
() автор топика
Ответ на: комментарий от buddhist

Ясно

Заблуждался. Исправлюсь. (Lisp) (Lisp) (Lisp) (Lisp) (Lisp):)

wwju
() автор топика
Ответ на: комментарий от grouzen

прикосаться

Возможно, после таких постов тебе следует убить своего учителя русского языка и не произносить больше ни слова :)

buddhist ★★★★★
()

Не все работает так, как нужно

Возможно дело в (slime-setup). Как я уже писал выше, при запуске выдает nil Пункт меню slime появился в emacs. Но доступны лишь немногие комманды. Что я сделал не так?

wwju
() автор топика
Ответ на: Спасибо от wwju

(setq inferior-lisp-program «/bin/clisp»)

Установи лучше sbcl или clozurecl

(slime-setup) ; не знаю, для чего, выдало nil, но и без этого работает

Чтобы slime настроить, настройки привел выше

Возможно ли автоматически подключать открытый файл?

Не понял, в чем вопрос. M-x slime.

alienclaster ★★★
()
Ответ на: Спасибо от wwju

У меня на винде такая концовка вместо последних твоих двух строчек:

(setq common-lisp-hyperspec-root "file://C:/Program Files/LispWorks Personal/lib/6-0-0-0/manual/online/web/CLHS/")
(require 'slime)
(slime-setup '(slime-fancy))

Первая подключает документацию по Common Lisp. Последняя, на сколько понимаю, вводит отдельный буфер для REPL. По-моему без этой команды REPL иногда смешивается с другим буфером interior-lisp.

Да, на линуксах у меня примерно так же настроено.

dave ★★★★★
()
Последнее исправление: dave (всего исправлений: 1)
Ответ на: комментарий от buddhist

есть более чем серьезные свободные реализации, достаточно простые для освоения.

Специалист тем и отличается от нуба, что даже в полном хаосе находит простоту и ясность.

ados ★★★★★
()

А вообще, ТС, персонально для тебя сделали плашку в самом начале страницы.

ados ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.