Monthly Archives: September 2012

Lisp Study

Lisp是一门已经有五十多年历史的语言,但现在依旧有很多人的喜欢。

最近在看SICP时,附带学习了lisp中的一个方言 scheme的一个变种racket :-),当然更重要的是学习函数式编程。

读完tutorial后,给我最深的印象有两个:

  1. 函数是程序的核心,所有函数尽可能的减少side-effect,提倡递归多于迭代。使用lisp如同解决数学题的结构,当然lisp也是基于数学发展而来的。
  2. 可以自定义语言的语法,并可以使用自定义的语法进行开发。当特定领域需要专门的语法时,完全可以重新定义,方便lisp在各个领域的使用。

reference: racket

简单的设计

无论在设计功能,设计实现,或者设计界面时,有时,甚至很多时候,简单的设计,不考虑复杂情况的设计,往往是最能解决问题的设计,也是最容易成功的设计。