一百年后的编程语言
*读者要没学过Lisp估计get不到本章的那个点。
- 基本运算符是一种语言能否长期存在的最重要的因素。其他因素都不是决定性的。如同买房子,地理位置是最优先的。
- 冗余的代码会导致更多冗余的代码。
- 一种语言的内核设计得越小,越干净,它的生命力就越顽强。
- 如果我们把语言的内核设想为一些基本公理的集合,那么仅仅为了提高效率就往内核添加多余的公理,却没有带来表达能力的提高,这是意见糟糕的事情。修改语言设计不是提高程序效率的正确方法。正确的做法是将语言的语义与语言的实现分离,在语义上不需要同时存在列表和字符串,单单列表就够了。而在实现上做好编译器的优化,使它在必要的时候把字符串作为连续字节的形式处理。
- 对于大多数程序,速度不是最关键的因素。
- essay(论文)这个词来自法语的动词essayer(试试看)。原始意义来看,论文就是你写一篇文章,试着搞清楚一件事。
- 浪费程序员的时间而不是浪费机器的时间才是真正的无效率。随着计算机速度越来越快,这回变得越来越明显。
- 软件的圣杯--可重用性(reusability)。应用程序越采用多层形式的开发,它的重用性就越好。
- 性能分析器(profier)将变得越来越重要。目前,性能分析并没有受到重视。应用软件的运行速度提升的关键在于有一个好的性能分析器帮助指导程序开发。
- 过去10年最激动人心的趋势之一就是开源语言的崛起,比如Perl,Python和Ruby。
- 学习开车的时候,一个需要记住的原则就是要把车开直,不是通过将车身对其画在地上的分割线,而是瞄准远处的某个点。