4年前在《黑客与画家》里听说过Lisp,后来学了python,已经见识过了对函数作为参数和返回值的做法。python已经吸收了一些Lisp的优点,现在再学common lisp算是比较循序渐进。我看了《ansi common lisp》,习惯了一堆括号之后,发现这种简洁还是python远做不到的。大概了解了Lisp的语法和常用函数之后,一鼓作气接着读《On Lisp》。
第五,六章进入一个函数式编程的小高潮,其中一些以函数作为参数再返回函数的例子还是很enlighting 的,作者布道的思想(由下而上的编程可以写出更好测试,更小巧的程序)也通过一些例子展现出来,通过写一些utility函数增加你工具箱里的各种工具,节省了主程序的大把砍柴功。而要写出通用的utility函数,就需要能提取许多相似程序共同的构架和pattern的能力。
作者十分喜欢运用递归,觉得这样代码才优雅,think recursively
目前看到第七章,宏,感觉有点吃力了,先放一放,以后再看
希望能应用lisp做一些实际的东西
英文版:http://www.paulgraham.com/onlisptext.html
中文版:http://www.ituring.com.cn/minibook/862