Как запустить Lisp

Обновлено: 21.11.2024

Если вы новичок или хотите начать работу как можно быстрее, вероятно, вам лучше всего подойдет Portacle. Portacle — это мультиплатформенная полная среда разработки для Common Lisp. Он включает в себя Emacs, SBCL, Git, Quicklisp, все настроено и готово к использованию.

В противном случае Common Lisp существует во множестве различных вариантов или реализаций.

Двумя популярными с открытым исходным кодом являются Steel Bank Common Lisp (SBCL) и Clozure Common Lisp (CCL):

Посмотрите здесь другие компиляторы Common Lisp, включая мощные коммерческие реализации.

Вы также можете попробовать Common Lisp онлайн:

Попробуйте Лисп онлайн

Это JCL Lisp REPL, работающий в Интернете. Обратите внимание, что это не полная реализация Common Lisp, но этого достаточно, чтобы почувствовать вкус:

Настройте среду

Установка Lisp состоит из трех частей: запущенного экземпляра Lisp, текстового редактора, подключенного к этому запущенному экземпляру Lisp, и установки проекта и библиотек.

Самый распространенный способ — использовать Emacs и SLIME в качестве текстового редактора/IDE и ASDF + Quicklisp для настройки проекта и библиотек.

SLIME — это расширение текстового редактора Emacs, которое соединяет редактор с работающим образом Lisp (называемым *inferior-lisp*) и взаимодействует с ним. Он обеспечивает оценку кода lisp, компиляцию и макрорасширение, онлайн-документацию, навигацию по коду, проверку объектов, отладчик и многое другое.

ASDF — это версия Make для Lisp. Он используется для определения проектов (называемых системами), их зависимостей, а также для загрузки и компиляции проекта.

Quicklisp — это менеджер библиотек для Common Lisp. Используйте его для загрузки, установки и загрузки любой из более чем 1500 библиотек с помощью нескольких простых команд.

Для ознакомления с тем, как настроить их все, вы можете ознакомиться с этим руководством.

Вы также можете посмотреть этот видеоурок:

Посмотрите вступительное видео

Читать о Lisp

Хороший способ изучить Lisp – прочитать книгу "Practical Common Lisp".

Дополнительные параметры см. в нашей документации.

Начать новый проект

Вы можете ознакомиться с Поваренной книгой Common Lisp, чтобы начать работу с экосистемой Common Lisp.

Посмотрите вступительное видео

Библиотеки

Посмотрите этот список библиотек Lisp.

Самый простой способ загрузки и загрузки библиотек — через Quicklisp. Чтобы начать, следуйте этим инструкциям.

Ресурсы

Эта работа находится под лицензией Creative Commons Attribution 4.0 International License.

"Программы должны быть написаны для того, чтобы их могли читать люди, и только случайно, чтобы машины могли их выполнять."

– Abelson & Sussman, SICP, предисловие к первому изданию

"Общепризнанной истиной является то, что язык является инструментом человеческого разума, а не просто средством выражения мысли."

– Джордж Буль, цитата из лекции Айверсона, посвященной премии Тьюринга

"Один из самых важных и увлекательных языков программирования — это Lisp (от английского "List Processing"), который был изобретен Джоном Маккарти примерно в то же время, когда был изобретен Алгол".

- Дуглас Хофштадтер, Гедель, Эшер, Бах

"Lisp — это программируемый язык программирования."

– Джон Фодераро, CACM, сентябрь 1991 г.

"Lisp — это не язык, это строительный материал."

"Любая достаточно сложная программа на C или Fortran содержит неформальную, неформально указанную, наполненную ошибками медленную реализацию половины Common Lisp."

– Филип Гринспун (Десятое правило программирования Гринспана)

"Лисп стоит изучать из-за глубокого просвещения, которое вы получите, когда наконец освоите его; этот опыт сделает вас лучшим программистом до конца ваших дней, даже если вы никогда не будете использовать сам Лисп на самом деле."< /p>

– Эрик Рэймонд, "Как стать хакером"

"Lisp — это усилитель для программистов."

"Common Lisp, удачное сочетание функций предыдущих версий Lisp."

- Уинстон и Хорн, Лисп

"Мне Лисп не кажется более мертвым, чем обычно."

"SQL, Lisp и Haskell – единственные известные мне языки программирования, в которых человек тратит больше времени на размышления, чем на ввод текста".

"Не беспокойтесь о том, что собираются делать другие. Лучший способ предсказать будущее – придумать его".

"Лучший из когда-либо созданных языков программирования".

– Алан Кей, о Lisp

"Я возражаю против того, чтобы делать то, что могут делать компьютеры."

"Lisp — это язык для выполнения того, что, как вам сказали, невозможно."

«Lisp — это красная таблетка».

"Через пару недель изучения Lisp я обнаружил, что программирование на любом другом языке невыносимо ограничено."

"Программирование на Лиспе похоже на игру с первобытными силами вселенной. Это похоже на молнию между кончиками пальцев. Никакой другой язык даже не кажется близким."

"Программист на Лиспе знает цену всему, но ничего не стоит."

"Lisp — самый сложный язык программирования, который я знаю. Он буквально на десятилетия опережает конкурентов. Насколько я знаю, невозможно серьезно использовать Lisp, пока не будет достигнута точка невозврата."

– Кристиан Линбек, Дорога к Лиспу

"[Lisp] помог ряду наших самых одаренных собратьев придумать ранее немыслимые мысли."

Обсудите и изучите программирование на Лиспе для всех диалектов. ВНИМАНИЕ: Сайт заблокирован. Нет новых пользователей или сообщений.

попытка запустить код LISP в LispIDE

попытка запустить код LISP в LispIDE

Во-первых, я ничего не знаю ни о Common Lisp, ни о каком-либо другом Lisp. Я только начинаю учиться.

Поэтому я скачал LispIDE, чтобы иметь среду, в которой я могу экспериментировать. Я написал очень простую программу:

который, согласно этому веб-сайту, должен распечатать 20,0.

Ну, я могу сохранить файл (как .lisp), но не могу его запустить. Я не могу найти функцию компиляции или запуска в IDE. Я бы также попробовал скомпилировать/запустить его из командной строки, но я не уверен, что для этого нужно ввести.

gib65 пишет: Во-первых, я ничего не знаю о Common Lisp или любом другом Lisp. Я только начинаю учиться.

Поэтому я скачал LispIDE, чтобы иметь среду, в которой я могу экспериментировать. Я написал очень простую программу:

который, согласно этому веб-сайту, должен распечатать 20,0.

Ну, я могу сохранить файл (как .lisp), но не могу его запустить. Я не могу найти функцию компиляции или запуска в IDE. Я бы также попробовал скомпилировать/запустить его из командной строки, но я не уверен, что для этого нужно ввести.

Вы должны просто ввести его непосредственно в «командной строке» (цикл чтения-оценки-печати), а не помещать его в файл: он ничего не печатает, он просто возвращает значение, поэтому, если вы "запустить" из файла ничего не получится. Вы можете обернуть (print . ) вокруг него, чтобы он распечатал значение, если хотите. Я не знаю LispIDE, поэтому не могу вам с этим помочь.

gib65 пишет: Во-первых, я ничего не знаю о Common Lisp или любом другом Lisp. Я только начинаю учиться.

Поэтому я скачал LispIDE, чтобы иметь среду, в которой я могу экспериментировать. Я написал очень простую программу:

который, согласно этому веб-сайту, должен распечатать 20,0.

Ну, я могу сохранить файл (как .lisp), но не могу его запустить. Я не могу найти функцию компиляции или запуска в IDE. Я бы также попробовал скомпилировать/запустить его из командной строки, но я не уверен, что для этого нужно ввести.

Перейдите в «Настройки» => «Установить путь к Lisp» и перейдите к своей реализации CL. Выберите файл .exe. Щелкните открыть.
Вверху есть восклицательный знак. Нажмите на это - теперь он перезапустит lisp и должен загрузить вашу реализацию CL.
Вы заметите, что в верхней части LispIDE есть символ с двумя круглыми скобками (). Когда вы написали свой код, прокрутите до конца кода и нажмите на символ. Он отправляет все в выбранном теле () в REPL.

Какую реализацию и ОС вы используете?

Indecipherable пишет: Перейдите в «Настройки» => «Установить путь к Lisp» и перейдите к своей реализации CL. Выберите файл .exe.

Единственные файлы .exe, которые я получаю, это LispIDE.exe и unins000.exe. Если я выберу LispIDE.exe, он скажет мне: «Пожалуйста, выберите не саму LispIDE, а ваш исполняемый файл консоли Lisp». Если я выберу unins000.exe, он спросит меня, хочу ли я удалить LispIDE. Все это находится в C:\Program Files\LispIDE. Я не уверен, что такое исполняемый файл консоли Lisp.

Неразборчивый написал: Когда вы написали свой код, прокрутите его до конца и нажмите на символ.

Portacle — это полноценная IDE для Common Lisp, которую можно взять с собой на USB-накопителе. Он мультиплатформенный и может работать в Windows, OS X и Linux. Поскольку он не требует сложного процесса установки, он настраивается и запускается в кратчайшие сроки.

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

В Portacle включены следующие программные пакеты:

Emacs

Emacs — это очень гибкий и расширяемый редактор, который существует уже давно. Благодаря своей истории и огромному сообществу, он способен охватить практически любую область программирования и многое другое.

В комплекте с Emacs идет несколько очень полезных пакетов, основными из которых являются Slime, Magit и Company.

SBCL — одна из самых быстрых и эффективных реализаций Lisp, доступных на сегодняшний день.

Краткий обзор

Quicklisp — это стандартный менеджер пакетов Lisp, который позволяет вам извлекать более тысячи библиотек и управлять ими с помощью нескольких нажатий клавиш.

Git — это, пожалуй, самая широко используемая система контроля версий на сегодняшний день.Это позволяет быстро и эффективно управлять изменениями в коде малых и больших проектов.

Как получить

Portacle довольно прост в настройке и использовании. Все, что вам нужно сделать, это распаковать архив. После этого вы можете свободно перемещать папку его установки и даже брать его с собой на карту памяти.

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

Окна

Загрузите последнюю версию и запустите ее. Он спросит вас, куда его установить, по умолчанию в вашу домашнюю папку. Обратите внимание, что вам не нужно добавлять portacle в конец пути. После извлечения вы можете запустить его, дважды щелкнув файл portacle.exe .

Обратите внимание, что portacle.exe привязан к каталогу portacle и требует, чтобы все в нем работало должным образом. Однако вы можете создать ярлык для исполняемого файла, чтобы упростить доступ к нему с рабочего стола.

Mac OS X

Загрузите последнюю версию и распакуйте ее. Из-за соображений «безопасности» в OS X вы должны затем переместить Portacle.app из извлеченного каталога в другой каталог, например, проекты / и обратно с помощью Finder. С этого момента вы можете запустить его, дважды щелкнув Portacle.app. При первом запуске OS X заблокирует приложение, поскольку оно «от неизвестного разработчика». Вам нужно открыть «Системные настройки», перейти в «Безопасность» и нажать кнопку «Все равно открыть», чтобы отметить приложение как надежное. После этого он должен работать сразу.

Обратите внимание, что вы не можете копировать Portacle.app вне каталога portacle. Вы должны взять с собой весь каталог. Однако вы можете перетащить приложение в док-станцию.

Линукс

Загрузите последнюю версию и распакуйте ее. Затем вы можете запустить его, дважды щелкнув portacle.desktop. Файл также может быть представлен вам как просто Portacle .

Обратите внимание, что вы не можете переместить или скопировать portacle.desktop в другое место. Чтобы он работал, он должен находиться в каталоге портала.

Использование

При запуске он может зависнуть на несколько секунд, а затем представить вам окно, которое выглядит примерно так:

Окно должно быть разделено на две области, каждая из которых отображает нечто, называемое буфером. Один из буферов, отображающий CL-USER>, является приглашением Лиспа. Другой — это вспомогательный буфер, который также должен содержать некоторые подсказки о том, как добраться до справочного руководства.

В качестве быстрого теста щелкните внутри буфера подсказок Lisp и введите следующий фрагмент кода:

Вы заметите, что автоматически вставляется закрывающая скобка и конец цитаты. Чтобы запустить его, переместите курсор в конец, нажав или используя клавиши со стрелками, и нажмите клавишу ⏎.

Поздравляем! Вы только что запустили свою первую программу в Portacle.

Возможно, вам также следует настроить параметры Portacle по умолчанию. Для этого нажмите Alt + X ( ⌘ + X на Mac), затем введите portacle-configure, а затем ⏎ . Затем вы должны увидеть подсказку в нижней части окна, в области, называемой «минибуфер».

После того как вы ответили на все вопросы, Portacle должен быть настроен и готов к работе. Обязательно прочитайте справочный документ. Он должен объяснить всю основную терминологию и команды по использованию редактора. Чтобы получить к нему доступ, нажмите Ctrl + H H .

Получение помощи или участие

Среда Visual LISP IDE (точнее, интегрированная среда разработки Visual LISP (VLIDE) — но это слишком многословно) — это отличный инструмент и ресурс для разработчиков, входящий в стандартную комплектацию большинства полных версий AutoCAD.

Даже если вы только начинаете программировать на LISP, по моему мнению, VLIDE необходим и может стать отличным подспорьем в обучении.

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

Введение

Для начала откройте AutoCAD на пустом чертеже и введите VLIDE в командной строке.

Должно появиться окно, содержащее два или более меньших окон, включая окно консоли и окно трассировки (подробнее об этом позже).

В появившемся окне мы можем начать создавать нашу программу LISP. Например, скопируйте или введите следующий код в пустое окно редактора:

Вы заметите, что функции, скобки, строки и другие элементы выделены соответствующим образом:

Подсветка синтаксиса является отличным визуальным помощником, а также помогает предотвратить использование защищенных символов, таких как имена функций, в качестве имен переменных, поскольку они подсвечиваются соответствующим образом.

На этом этапе мы можем изучить код более подробно, и, если вы не уверены в том, как должна использоваться функция, мы можем немедленно получить информацию об этой функции, используя справочную документацию VLIDE. Учебное пособие о том, как это сделать, можно найти здесь.

Загрузка программы

Хорошо, мы только что создали программу в Visual LISP IDE, теперь нужно ее протестировать!

Как вы, возможно, знаете, загрузка программы в AutoCAD иногда может быть утомительной, так как файл LISP необходимо сохранить, а затем либо загрузить с помощью команды Appload, либо с помощью ACADDOC.lsp . Но вам будет приятно узнать, что загрузка программ в VLIDE намного проще.

После загрузки программы появится окно консоли Visual LISP, показывающее, успешно ли загружен код.

Теперь, загрузив приведенный выше пример кода, мы можем вернуться в окно AutoCAD и в командной строке ввести: test для запуска программы.

Консоль Visual LISP

Консоль немедленно оценит введенное выражение LISP, будь то вызов функции, сама функция или, возможно, переменная. Это удобно для экспериментов с функциями и выражениями без необходимости создания всей программы.

Читайте также: