◇◇新语丝(www.xys.org)(xys3.dxiong.com)(www.xysforum.org)(xys2.dropin.org)◇◇   驳张云楼《谭浩强大师的世界纪录》   作者:注意版本   同很多人一样,我也是通过谭浩强《BASIC语言》教材入计算机之门的。工 作后头几年也用BASIC写过一些程序。后来听说过该书发行量破世界记录的说法, 那时我不用BASIC已经多年。   说实在的,谭浩强老师虽然学术上在清华排不上号,但完全可以称得上计算 机界著名的科普作者。对待大学老师,我们不能唯学术成就来评价。课堂上讲课 好的老师对学生们是个享受,这对本科教育至关重要。我相信《BASIC语言》发 行量大有中国国情因素,但也要写得好,写得早。   张云楼老师说发现了大量低级错误,恰恰说明其见识太少。要知道我们读书 时就知道Z80机器上的MBASIC和苹果II上的不同,还有一种学习机也有差别。就 是后来C语言,标准化做得好一些,但是TC和MSC有差别几乎也是常识。就算完全 相同的程序,编译处理的参数不同,也可能引起差别。如果没有make文件和 project的概念,不能算学会了编程吧?   例1作者试过了TC几个版本,编译模式估计是缺省的,改过吗?感觉现在用 TC很少了吧,近20年前流行的。我相信教材作者至少在某个版本上试验过,很可 能后来版本更新了引起问题。版本兼容性问题在计算机界普遍存在。   例2中那个表达式,在有些版本的编译器确实是支持的。不过,现在的主流 意见认为,新程序尽量不要那么写。程序员要写易懂的程序,当然,旧程序也要 能够读懂。教师应该给学生讲清楚这些编程新潮流。   例3中提到"ANSI C 标准"也没有说版本。除非你查遍所有版本都同样说法, 才能指责谭浩强的教材。当然,非整数的类型很可能那个版本的标准是为了照顾 某些旧软件。新编程序没有必要那样写。如果你看过switch语句编译后的汇编语 言,就能够理解为何有此规定了。   当然,如果有机会,教材也要不断更新。这些年来教材更新速度太慢,这也 是事实。 (XYS20090312) ◇◇新语丝(www.xys.org)(xys3.dxiong.com)(www.xysforum.org)(xys2.dropin.org)◇◇