买了一本80s年代的书,名字叫做the science of programming(其实是在淘宝上pdf打印),作者是david gries,dij写的序。总体上只读了开头,先写个开头鼓励自己一边读一边写文章。
dij在forward里面说,很多人认为需求的正确性比程序正确性更重要,真正的世界不需要证明程序的正确性,说这些话的人都是不专业的(these objections come from people that don't master the techniques they object to)。dij是属于大师级的人,这个不是指现在很多公司里说的那种科学家什么可以比肩的,传说他一直致力于科学的编程,
而这个概念很模糊,什么是科学,什么是不科学。按我的经验就是平时我们想当然的这么写这个程序,错了就重新再改。dij说的应该是这个意思吧。
在preface中作者david引用了oxford english dictionary里面一个很有意思的句子,关于什么是science,什么是art, 简单说science更需要principles的支持推到吧。那么这本书里面的科学编程不去讨论“ 测试”,“鲁棒性”,“错误检测”,这本书讲的是关于程序逻辑推理,自然演绎系统的内容。这些课程研究生上过一些,负责任说一句,上的太水了,完全没把实际和理论连起来讲。所以这部书买过来弥补一下缺憾。