Quicklisp

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Quicklisp

Quicklisp — пакетный менеджер для библиотек Common Lisp, а также сетевой репозиторий пакетов, им устанавливаемых. Реализован минимальными средствами Лиспа, благодаря чему обеспечивается совместимость с большинством субдиалектов и реализаций Common Lisp.

Создан в 2010 году Закари Бином (англ. Zachary Beane), им же развивается, и им же поддерживается сетевой репозиторий с пакетами. Распространяется по лицензии MIT. По состоянию на 2020 год находится на стадии бета-версии, однако считается достаточно стабильным и надёжным[1]. Пакеты принимаются в репозиторий при условии безошибочной собираемости на референтной системе и выполнении некоторых базовых критериев, более глубокой проверки качества не осуществляется[2].

Клиент Quicklisp после установки как правило прописывают в файл инициализации интерпретатора:

(ql:add-to-init-file),

после чего менеджер доступен при любом старте REPL-среды[3]. Типичный сценарий работы — поиск пакета в репозитории:

(ql:system-apropos "wiki") — поиск пакетов с названием, содержащим «wiki»,

и последующая установка:

(ql:quickload "cl-mediawiki") — загрузка со всеми зависимостями и локальная установка пакета cl-mediawiki.

Поддерживается самообновление, реализована возможность отката в случае неуспешной установки какого-либо пакета.

Примечания

  1. Вайц, 2016, p. 570: «Don’t worry about the “beta” there. QUICKLISP has been around since 2010 and it works just fine».
  2. Вайц, 2016, p. 570: «libraries are added to QUICKLISP if someone sends a request to add them and they are only ever rejected if they don’t build on a reference system or fail to fulfill formal criteria […] the fact that a library is available via QUICKLISP shouldn’t be interpreted as some seal of quality».
  3. Вайц, 2016, p. 570.

Литература

Ссылки