2011-05-13 84 views
10

我很忙,學習Common Lisp,&我正在尋找一個靜態代碼分析工具,它可以幫助我開發更好的風格&避免陷入常見陷阱。Common Lisp的靜態代碼分析工具?

我發現Lisp Critic我覺得它看起來不錯,但我希望有人能夠推薦一些其他工具,和/或與他們分享他們的經驗。

回答

12

鑑於Lisp的動態特性,靜態分析是一切從艱難到不可能,取決於源代碼的類型。

對於某些目的,我建議使用SBCL編譯器。查看它的手冊,瞭解它提供的功能。一個特徵是某種形式的類型推斷。它還爲諸如未聲明的變量,類型問題,使用錯誤的參數數量調用函數,使用未定義的函數,以各種方式違反ANSI CL標準等提供了許多標準警告。

+5

做了翻拍通過SBCL編譯器的輸出進行讀取通常是查找未來錯誤可能來源的好方法。有時候,它也適合尋找文體或性能問題。 – Vatine 2011-05-13 10:11:28

3

瞭解良好風格的最佳方式是閱讀大量代碼並要求其他人查看您的代碼。這不是Common Lisp特有的。

+2

同意;我已經發布了一些Common Lisp代碼到http://codereview.stackexchange.com/並收到了一些很好的反饋。 – 2011-05-16 05:01:18