学习COMMON LISP总结

http://www.adaiw.com/?p=627

今天心情很高,因为我决定将学习计划之一的Common lisp结束,可以进入下一个学习计划的学习了! 自从看了啊虎送的书:《黑客与画家》决定开始学习LISP,已经将近一年时间,这一年之中工作超级忙,学习《Practical Common lisp》,大部分内容都是在下班、加班之后看的, 仔细看完了前面的23章,后面的实例部分没有看了。这里做个学习总结:

学习目标:了解LISP语言,函数式编程。

学习动机:学习什么是强大的宏,如何用代码生成代码,如何写DSL语言。

学习心得:

LISP语言是一个类似于脚本语言的超级古老语言,结构单纯,代码和数据都用一个LIST来表示,但超级灵活,会一不小心迷失在代码中。这样的感觉像是需要花心思去对付语言,让LISP语言去生成另一门DSL(领域语言)来解决问题,而不是面对问题本身,中间多了一节,并且要花时间在命名上面,来区分代码与数据,变量与常量,函数名与变量,内建函数与自定义函数,怪自己编程水平有限,没有办法控制代码的生长。

另外,《Practical Common lisp》这本书看的让人又爱又恨,优点是代码与实例结合,好理解,缺点是章节编排松散,语言不简洁,长期阅读会让读者没有连续性,读了后面忘了前面,很多话让人看了没有收获。 《ANSI Common Lisp》这本书写的不错,可惜我的档期满的了,作为以后的参考罢。

LISP的库比较少,很多是商业库,需要购买,这点也是从学习转实用的一大障碍,毕竟是要花美刀的。

总的来说,LISP语言算编程语言类里的终极语言,结构极其简单,用法极其灵活,历史极其古老,有点像失传很久的武林绝学,大道至简,数招之间便可要人小命,但一般人难以掌握,我根基太薄,只有再练个十年八年的再说吧,自此的学习就当是翻看了一本绝世武功的目录。

PS:学习LISP的副产品: 从VIM转用EMACS,从一名快速狂噪的Vimer变成了缓慢淡定的Emacer。

http://www.adaiw.com/?p=627

你可能感兴趣的:(学习COMMON LISP总结)