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

Quicklisp
Тип система управления пакетами
Написана на Лисп[1]
Последняя версия
Репозиторий github.com/quicklisp/qui…
github.com/quicklisp/qui…
Лицензия лицензия MIT[2]
Сайт quicklisp.org

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

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

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

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

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

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

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

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

Примечания править

  1. The quicklisp Open Source Project on Open Hub: Languages Page — 2006.
  2. The quicklisp Open Source Project on Open Hub: Licenses Page — 2006.
  3. Вайц, 2016, p. 570: «Don’t worry about the “beta” there. QUICKLISP has been around since 2010 and it works just fine».
  4. Вайц, 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».
  5. Вайц, 2016, p. 570.

Литература править

  • Edmund Weitz. Common Lisp Recipes. A Problem-Solution Approach. — Hamburg: Apress, 2016. — 744 с. — ISBN 978-1-4842-1177-9.
  • Robert Smith. A Tutorial For Creating and Publishing Open Source Lisp Software // Proceedings of International Lisp Conference. — 2012. — arXiv:1209.5626.

Ссылки править