Lisp是一门已经有五十多年历史的语言,但现在依旧有很多人的喜欢。
最近在看SICP时,附带学习了lisp中的一个方言 scheme的一个变种racket :-),当然更重要的是学习函数式编程。
读完tutorial后,给我最深的印象有两个:
- 函数是程序的核心,所有函数尽可能的减少side-effect,提倡递归多于迭代。使用lisp如同解决数学题的结构,当然lisp也是基于数学发展而来的。
- 可以自定义语言的语法,并可以使用自定义的语法进行开发。当特定领域需要专门的语法时,完全可以重新定义,方便lisp在各个领域的使用。
reference: racket