您当前的位置:主页 > 今晚113期特马开几号 >

Pascal 之父、编程祖师爷尼古拉斯威茨痛批:教授成了项目经理大

作者:admin     发布时间:2021-07-29 19:19 点击数:

  九龙心水官方网站香港马会2020年开奖直播及资料。Pascal 之父、编程祖师爷尼古拉斯威茨痛批:教授成了项目经理,大学过于 重论文轻教学

  【CSDN 编者按】尼古拉斯威茨(Niklaus Wirth)是瑞士计算机科学家,也是计算机编程领域的祖师爷,他先后参与或独立发明了 Euler、Pascal 及 Modula 等多种编程语言,于 1984 年被授予图灵奖,他的名言 算法 + 数据结构 = 程序 (Algorithm+Data Structures=Programs)在计算机领域几乎人尽皆知。

  威茨于 1934 年出生在瑞士北部的温特图尔,父亲是一位地理学教授。威茨自幼聪明,从小就显示出超强的动手能力,他最大的爱好就是组装飞机模型。

  中学毕业以后,威茨进入世界著名学府的苏黎世工学院(ETH),并于 1958 年取得学士学位。之后他进入加拿大的莱维大学继续深造,并于 1960 年取得硕士学位。之后他又一次迁移到美国加州,进入加州大学伯克利分校攻读博士学位。

  读大学时候的威茨已经在计算机领域崭露头角。威茨在撰写博士论文时,Algol 60 语言刚刚问世。它是第一个清晰定义的语言,其语法是用严格公式化的方法说明的。但当时已有一些学者认识到,清晰的规格说明虽然有助于可靠而有效的实现,但 Algol 60 报告中仍然有一些缺陷和不足。

  威茨在和 Algol 的主要设计者冯维京格藤(Andrian van Wijngaarden)多次交流之后,决定对 Algol 60 做进一步优化,并以此为自己的博士论文课题,后来就诞生了 Euler。

  Euler 是威茨所参与设计的第一个语言,虽然在实用性上尚欠缺考虑,但在学术上却非常优美,为编译器的系统设计创造了一个很好的基础。

  博士毕业以后,因为在 Euler 上的成就,威茨得以进入门槛极高的斯坦福大学工作。

  与此同时,负责 Algol 语言完善与扩充的工作小组也看中了威茨,想招他进去工作。威茨进去之后,发现小组分成两派:一派主张设计一个新语言,以便树起一个新的里程碑;另一派则觉得时间太紧,主张对 Algol 60 进行适当优化。威茨便自称同时属于这两派,并提交了一份建议书。这份建议书经过托尼霍尔(Tony Hoare)等人的修改和完善以后顺利通过,这就是 Algol-W ( W 是威茨名字的首字母)。

  之后,威茨带领学生在一台 IBM 360 上试着将这份建议书投入实践。但是当时的 IBM 360 只提供汇编语言和 FORTRAN 语言,威茨和他的学生都觉得这两者并不适合作为设计编译器的工具。为此,威茨决定设计一种新的语言来编写 Algol-W 的编译器。威茨用了两周时间写出这个语言的定义,然后用了 4 个月的时间在 Burroughs 公司的 Bu5000 计算机上完成了交叉编译程序,而威茨的一个学生则把这个交叉编译程序成功移植到了 IBM 360。

  这些额外的工作虽然耗费了威茨大量的精力和时间,但也加快了 Algol-W 编译器的开发,同时催生了一个新的语言 PL360(Pascal 的前身)。

  PL360 本是作为辅助工具而开发的,但却在许多地方获得应用,威茨在此基础上,对 PL360 进行了进一步的完善和补充,为纪念法国数学家和哲学家布莱兹帕斯卡(Blaise Pascal),他将这种语言命名为 Pascal。

  Pascal 是最早出现的结构化编程语言,具有丰富的数据类型和简洁灵活的操作语句,Pascal 是高级语言发展史上的一个重要里程碑。

  Pascal 问世之后,由于它的简洁明了以及所提供的丰富的数据结构和控制结构为程序员提供了极大的方便与灵活性,加之其适合于由微处理器所组成的计算机系统,很快广泛地流传开来。在 C 语言问世以前,Pascal 是风靡全球、最受欢迎的语言之一,创下了发行拷贝数最多的世界记录。威茨的一个学生菲力浦凯恩(Phillipe Kahn),从苏黎世工学院毕业以后,在美国加利福尼亚州办了一个软件公司,卖出了 100 多万份 Pascal 拷贝,因此而赚得钵满盆溢。

  这个概念简而言之,就是不要求一步就编制成可执行的程序,而是分若干步进行,逐步求精。第一步编出的程序抽象度最高,第二步编出的程序抽象度有所降低,一直到最后一步编出的程序即为可执行的程序。用这种方法编程看似复杂,实际上可以使程序更加地易读、易写、易调试、易维护、易验证。

  结构化程序设计方法又称为 自顶向下 或 逐步求精 法,在程序设计领域引发了一场革命,不久便成为程序开发的一个标准方法,尤其是在后来发展起来的软件工程中获得广泛应用。有人评价说威茨的结构化程序设计概念 完全改变了人们对程序设计的思维方式 。

  随着编程技术的发展,为适应并发程序设计的需要,威茨于 20 世纪 70 年代中晚期设计出 Modula 语言。它继承了 PASCAL 语言中良好的传统构造,包括典型的控制结构、数据类型和过程等概念,并弥补了 PASCAL 语言的不足,增加新的设施,即引进了模块和进程概念,增加低级设施,采用更为系统化的语法等。

  Modula 问世之后,引起了不小的轰动,威茨很快发发型了第二个版本 Modula-2,得到了广泛的应用。目前,世界上已经开发了近百个 Modula-2 编译系统,欧洲、加拿大、澳大利亚等不少大学更是用 Modula-2 代替 PASCAL 语言作为计算机科学系本科生的第一门程序设计课。

  近年来,威茨开始了一个新的计划—— Oberon 计划。Oberon 是将程序设计语言和操作系统结合在一起的、面向单用户的个人工作站的一个系统。在威茨看来,在因特网日益普及的情况下,今后联网的计算机主要将是个人工作站,因此如何使个人工作站功能更加强大、更加方便使用是一个十分重要的研究方向。

  威茨之所以将这个计划取名为 Oberon,是因为 Oberon 是希腊神话中的仙境之王和女神 Titania 的丈夫。威茨的目标是要使 Oberon 语言超越 PASCAL 和 Modula,使设计出的操作系统和编译器功能更加强大。威茨曾写了两本书向读者推荐 Oberon。

  因为对 Euler、PASCAL 及 Modula 等语言的贡献,国际计算机学会(ACM)于 1984 年授予威茨当年的图灵奖,1987 年又授予他计算机科学教育杰出贡献奖。

  除此之外,国际学术组织(IEEE)也先后在 1983 年及 1988 年授予威茨 EmanualPiore 奖、计算机先驱奖。

  威茨的学术著作颇丰,包括《系统程序设计导论》、《算法 数据结构 = 程序》、《算法和数据结构》、《Modula-2 程序设计》、《Oberon 计划:操作系统和编译器的设计》、《数字电路设计教材》等。

  2002 年,威茨在一次公开演讲中,对当下许多大学轻视课程教学的风气毫不留情面地进行了批评讽刺。

  他说: 长期以来,大学的教授们大都已不再是充满智慧的饱学之士了。他们不再默默钻研学问,也不再热忱于传道授业解惑,而是做起了‘项目经理’,带领他们的学生,近乎疯狂地申请科研项目,并批量地生产科技论文。在这个高度竞争的社会大环境中,教授的‘业绩’已跟教学毫无瓜葛,反而是跟团队规模、项目经费、发表论文数息息相关。

关闭窗口