FP语言Lisp的特点
初识Lisp:
- 语言的内核设计的非常小。Lisp语言只有7种公理(基本操作符)。
- 写出来代码很短。30多行的代码,就可以写一个Lisp方言的解释器。据说C代码平均是Lisp代码的7到10倍,还有说20倍的。
- 为什么Lisp代码更短?就是因为使用“自下而上”的编程方法。你不是在基础语言上开发,而是在基础语言上构件一种你自己的语言,然后再用后者开发。
- 你要是不能想象Lisp语言的代码是什么样,可以试着想象XML,想象XML中的每个节点都是函数和自变量,而且可以执行。(Lisp的代码都是嵌套和递归的,编译后就是一颗解析树。没有数据和代码之分,而且是动态类型语言。)
- 我在08年学习C#时候才知道的垃圾回收机制,Lisp语言在1960年就引入了。
- Lisp在所有语言里,具有最高的抽象层次,编程能力最强,。(这里的抽象指编程语言本身的抽象,不是对待编程物的抽象。)
- Lisp没有过时的原因是因为本质上它不是一种技术,而是数学。数学是不会过时的。
- 皮特诺维格发现,总共23种(面向对象的)设计模式中,有16种在Lisp语言中“本身就提供,或被大大简化”。