المكتبات المثبتة ASDF من سطر الأوامر
-
06-07-2019 - |
سؤال
قادمة من خلفية بيرل ، يجب أن أقول إنني أفضل cpan Foo::Bar
إلى الاضطرار لبدء SBCL ، (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)"
}
نصائح أخرى
LISP المشتركة يمكن أن يكون مطوّلة. ومع ذلك ، فإن معظم تطبيقات (الكل؟) تدعم ملف بدء تشغيل LISP الذي يحدد/يحمل كل ما تحب لتخصيص بيئة التطوير الخاصة بك.
أيضا ، تحقق من كرات الطين.
يمكنك التحقق من http://www.quicklisp.org/ - إنها سريعة وسهلة التثبيت ، ثم تنزيل وتثبيت وتحميل أنظمة:
(ql:quickload :cxml)
للترجمة إلى بيرل ، هذا يشبه (شل) cpanm cxml
و (داخل بيرل) use cxml
الكل في واحد.
يمكنك البحث عن الأنظمة أيضًا ؛ على سبيل المثال لسرد كل:
(ql:system-apropos "xml")
عادةً ما تقوم بتشغيل عملية lisp وإعطائها هذه الأوامر مباشرة ، ولكن إذا كنت تفضل القيام بالتثبيت الخاص بك وما إلى ذلك ، يمكنك تحديد الأسماء المستعارة (كما لديك في الإجابة https://stackoverflow.com/a/42733/17221):
function ql_install {
sbcl --eval "(ql:quickload :$1)" --eval "(quit)"
}
function ql_apropos {
sbcl --eval "(ql:system-apropos \"$1\")" --eval "(quit)"
}