В C / C ++ я могу сделать библиотеку и сделать ее статической или dll, используя #include "" в исходном коде и -labc при компоновке. Как мне использовать такую же функцию в lisp?
В качестве примера util.lisp в каталоге A. Я определяю библиотечную функцию hello.
(defpackage "UTIL" (:use "COMMON-LISP") (:nicknames "UT") (:export "HELLO")) (in-package util) (defun hello () (format t "hello, world"))
И попробуйте использовать эту библиотечную функцию из основной функции.
(defun main () (ut:hello)) (main)
Я пробовал
clisp main.lisp A/util.lisp
Но я получил следующее сообщение
*** - READ from #: there is no package with name "UT"
Мне просто нужно было загрузить библиотеку.
(load "./A/util.lisp") (defun main () (ut:hello)) (main)
И запустить clisp main.lisp нормально работает.