Я открыл для себя Структуру и интерпретацию компьютерных программ, и это очень весело. Итак, я решил, что поделюсь, как настроить Emacs для работы с ним. Эта статья не предполагает никаких предварительных знаний о Emacs. Конечный результат: Emacs + MIT-Scheme + Geiser.

Сначала установите MIT-Scheme, диалект Лиспа, используемый в книге: brew install mit-scheme или sudo apt install mit-scheme.

Если вы работаете на Mac, я рекомендую скачать Emacs прямо из паутины. В противном случае просто используйте свой менеджер пакетов (обратите внимание на неперехваченное исключение для пользователей Windows).

Двумя наиболее важными клавишами в Emacs являются control и alt, обозначаемые соответственно C и M. Запустите Emacs, затем нажмите C-x-C-f, затем введите ~/.emacs.d/init.el

Нам нужно будет добавить репозиторий пакетов Melpa в Emacs. Вставьте следующее в свой init.el:

Введите C-x-C-s для сохранения, затем введите M-x (alt-x). Это откроет минибуфер, чтобы вы могли вводить команды. Перезапустите Emacs (для удовольствия введите C-x-C-c вместо кнопки выхода).

Популярная викторина: откройте ~/.emacs.d/init.el резервную копию, используя правильный ярлык. Затем вы можете начать как сумасшедшую установку пакетов:

M-x package-install return geiser

Geiser позволит вам заниматься REPL-управляемой разработкой, обеспечивая мгновенную обратную связь при внесении изменений в ваш код. Добавьте следующее в конец конфигурации emacs, и вы будете готовы отправиться в грандиозное приключение.

Сохраните и запустите M-x eval-buffer, чтобы загрузить новую конфигурацию в emacs, затем откройте файл *.scm. После этого введите M-x run-geiser. Это запустит Scheme REPL (цикл чтения-оценки-печати) в новом окне Emacs, которое прикреплено к файлу схемы, над которым вы работаете. Вы узнаете много нового о REPL в SICP.

Если вы наберете «Hello World» в окне файла, а затем запустите C-M-x, вы оцените текущую строку, в которой находитесь:

Затем замените его функцией:

Затем введите C-c-M-e. Это оценит функцию fib, а затем переместите курсор на REPL. Если вы запустите (fib 10), результат будет 89.

И вот оно! Простая установка Emacs для SICP. Вот полный init.el

А вот шпаргалка Geiser со всеми перечисленными командами:
https://www.nongnu.org/geiser/geiser_5.html