我正在寫一些代碼在SBCL,並在我的職務排序不斷引起以下類型的警告,當我將文件加載到REPL出現:SBCL前向聲明:可能嗎?
;caught STYLE-WARNING:
undefined function: FOO
哪裏FOO
是函數的符號。這完全是由於它們是如何在我的文件中訂購的,因爲函數FOO
是定義的,只是不在引發該警告的代碼部分之前。
現在,在Clojure中,我熟悉的是Lisp,我使用declare
表單,它使我可以進行聲明以避免此類問題。一般來說,SBCL/Common Lisp有沒有類似的東西?
我典型地使用''(負載 「foo.lisp」)''在頂層加載整個文件。這些警告顯示我第一次加載一個新文件。 –
嘗試'(編譯文件「foo.lisp」)'',然後加載'(加載「foo.fasl」)'。如果你將emacs/slime作爲前端運行,那麼Ctrl-c Ctrl-k會爲你做這件事。 –