Исходя из Perl, я должен сказать, что предпочитаю cpan Foo::Bar необходимости запуска sbcl, (require :asdf-install) и, наконец, (asdf-install:install :foo-bar). Есть ли что-нибудь более удобное, чем это вокруг?
cpan Foo::Bar
(require :asdf-install)
(asdf-install:install :foo-bar)
Есть clbuild:
http://common-lisp.net/project/clbuild/
Но я добавляю это к моему .bashrc:
function asdf_install { sbcl --eval "(asdf:operate 'asdf:load-op :asdf-install)" --eval "(asdf-install:install :$1)" --eval "(quit)" } function asdf_oos { rlwrap sbcl --eval "(asdf:operate 'asdf:$2 :$1)" }
Вы можете проверить http://www.quicklisp.org/ - это быстро и легко установить, затем загрузить, установить и загрузить системы:
(ql:quickload :cxml)
Чтобы перевести на Perl, это похоже на (shell) cpanm cxml и (внутри Perl) use cxml все в одном.
cpanm cxml
use cxml
Вы также можете искать системы; например, чтобы перечислить все:
(ql:system-apropos "xml")
Обычно вы запускаете процесс lisp и даете ему эти команды напрямую, но если вы предпочитаете выполнять установку и т. Д. Из оболочки, вы можете определить псевдонимы (как в ответе * 1014). * function ql_install { sbcl --eval "(ql:quickload :$1)" --eval "(quit)" } function ql_apropos { sbcl --eval "(ql:system-apropos \"$1\")" --eval "(quit)" }
function ql_install { sbcl --eval "(ql:quickload :$1)" --eval "(quit)" } function ql_apropos { sbcl --eval "(ql:system-apropos \"$1\")" --eval "(quit)" }
Common Lisp может быть многословным; однако большинство (все?) реализации поддерживают файл запуска Lisp, который определяет / загружает все, что вам нравится, для персонализации среды разработки.
Кроме того, проверьте Mudballs .