簡評《實用Common Lisp程式設計》

Liszt發表於2011-11-03

Lisp是博大精深的,Lisp是簡單實用的。你可以在其他語言裡找到LISP語言的影子,Paul Graham也說過"Java、Perl、Python、Ruby。你會發現,排在越後面的語言,越像Lisp"。LISP有很多優點值得 我們程式設計師去學習,而《實用Common Lisp程式設計》正是入門LISP最好的書籍。

《實用Common Lisp程式設計》從為什麼我們需要LISP開始說起,之後為我們選擇了一個高質量的LISP實現和IDE,然後才開始教我們如何實用LISP。關於LISP最重要的事情之一就是程式會如你所想的那樣執行。邊寫程式碼邊除錯的感覺非常好。在你對於LISP基礎有一定的掌握之後,作者插入了一個CD資料庫的例子,可以看到其中的快速編譯的查詢語句幾乎就是LISP版的SQL語言。

在你學完了基礎之後,該書將你引入了下一個有趣的課題:巨集。作者用巨集非常歡樂地實現了一個可讀性很強的單元測試框架,這個框架僅僅只有26行程式碼(JUNIT大約有2K行程式碼)。LISP的巨集是一個非常強大的工具,但是也很容易被濫用。該書致力於教會你一種合理的巨集用法。

接下去的每個章節都包含一個清晰完整的內容:高階資料結構,檔案I/O,物件導向程式設計,字串處理,異常處理等等這些程式設計的核心內容。當然本書對於一些LISP複雜特性也有很詳細的敘述比如:FORMAT(格式化輸出),LOOP(泛化迭代收集),CLOS(Common Lisp物件導向系統)等等。因此,這本書也適合作為日常程式設計的手邊參考。

之後部分全部都是使用例子。一個垃圾郵件過濾器,一個物件導向的二進位制檔案解析庫,利用這個解析庫做的MP3頭資訊解析工具和大量的WEB程式設計。

《實用Common Lisp程式設計》也是一本被國外Lisp推薦作為學習LISP的入門圖書。作者是一個對程式設計,對Lisp非常熱情的程式設計師,如果你也熱衷於程式設計,好奇於Lisp,我想你不應該錯過這本書。

相關文章