纪念尼古劳斯·维尔特,1934-2024

纪念开创Pascal语言的计算机科学家,追求简洁优雅代码的倡导者,软件开发进步过程中举足轻重的人物。

译自Tribute: Niklaus Wirth, 1934-2024,作者 Steven J. Vaughan-Nichols,又名sjvn,从CP/M-80成为颠覆性的PC操作系统,300bps成为快速的互联网连接速度,WordStar成为最先进的文字处理软件开始,他就一直在写关于技术和技术商业的文章,而且我们喜欢这样。

伟大的计算机科学家尼古劳斯·维尔特(Niklaus Wirth)已经辞世,但他的作品将永存。

我来这里不是为了哀悼 1月1日逝世的89岁高龄的计算机科学巨匠维尔特,而是为了赞扬他。虽然公众不会认识他的名字,但他对编程世界的贡献是无与伦比的,他留下的不可磨灭的印记塑造了软件开发的轨迹。

我不能说我真正遇见过他,但我在80年代参加过他的几次演讲。他给我的感觉,一言以蔽之,令人印象深刻。

维尔特是瑞士人,他在苏黎世的瑞士联邦理工学院(ETH)度过了大部分职业生涯。然而,他在斯坦福大学任职期间开发的编程语言欧拉(Euler)和PL360对他未来的贡献起到了关键作用。

这为他未来的贡献奠定了基础。他对Algol语言的贡献被忽略了。有意思的是,当Algol小组选择了Algol 68时,他分支了自己的工作,并从中开发出了Pascal,这种语言直到今天还在使用,而Algol已经被人遗忘。

的确,Pascal是我寻找维尔特的原因。这种语言通过结构化编程和数据结构化鼓励良好的编程实践。它是一种过程化编程语言,旨在强调简单性、灵活性和高效的编译。

1970年推出的Pascal成为编程教育的基石,影响了一代程序员。它的简单性和效率特别适合早期PC有限的资源,这导致它在学术和商业环境中得到广泛采用。

Pascal的长尾效应

虽然Pascal不再被广泛用于生产,但它仍然被教授,因为它对于教授良好的编程习惯很有用。

也就是说,尽管它可能最著名的是一种教学语言,但它在商业中的用途并不少。例如,Pascal是经典的Mac OS的主要语言,集成开发环境比如Turbo Pascal被用来在许多平台上开发软件。

如今,Pascal的后代Delphi及其集成开发环境RAD Studio仍在商业上被使用。也有开源的Pascal选择,FreePascal编译器和Lazarus IDE

1976年,受他在帕洛阿尔托研究中心的经历启发,维尔特领导开发了Lilith工作站,这是一台开创性的图形工作站。这个项目也推出了Modula-2,一种支持并发并具有更好模块化的Pascal语言演进步骤。

从那时起,维尔特的愿景继续随着Ceres工作站Oberon编程语言和操作系统的开发而发展。与其前身一样,Oberon强调简单性和效率,这些都是维尔特工作的重要标志。

Oberon也是他提出维尔特定律(Wirth's Law)的时机: "尽管有了巨大的进步,但硬件变得更快的速度却比软件变得更慢的速度要慢。"

除了语言开发,维尔特还深入参与了硬件设计,特别是field-programmable gate arrays(FPGA)的使用,展示了他的通才能力和将理论与实践结合的承诺。

ACM图灵奖获得者

维尔特的荣誉众多。他因开发创新计算机语言在1984年获颁享有盛誉的ACM图灵奖。他还获得了许多其他荣誉,包括1988年IEEE计算机学会的计算机先驱奖和10个来自顶尖机构的荣誉博士学位。

别以为他是个严肃的学者,维尔特也以他的幽默感而闻名。他最著名的评论可能是当被问到"您的姓氏发音是'Wirth'还是'Virth'?"他回答这个取决于他是被当作名字还是当作值来调用。(好吧,你得是程序员才能明白,但我一直觉得这很有趣。)

而且,维尔特的遗产不仅仅在于他创建的语言和工具,还在于他的软件开发理念。你可以自己阅读他的论文《浅谈精益软件(A Plea for Lean Software)》。在软件复杂性日益增加的潮流中,他倡导了精益、高效软件的事业。他对软件开发的方法,强调简单性和优雅性,继续在这个行业中产生共鸣,这个行业常常受复杂性的困扰。

就像维尔特的学生、Borland和许多其他科技公司的创始人菲利普·卡恩(Philippe Kahn)所说,"您的遗产将继续激励代代计算机科学家和工程师。"

他说得对。维尔特的见解对这个领域产生了深远的影响。他的离世是重大的损失,但他的工作和理念将继续激励计算世界未来几代人。安息吧,尼古劳斯·维尔特教授;您的遗产将在当今每一行高效、优雅的代码中延续。

本文在云云众生yylives.cc/)首发,欢迎大家访问。

相关推荐
Testopia7 天前
AI与敏捷开发管理1:传统方法失灵?人工智能项目的新法则
人工智能·项目管理·敏捷开发·敏捷流程
NocoBase11 天前
NocoBase 如何成为 ED 的技术底座,支撑内部系统到商业化产品?
开源·敏捷开发·资讯
用户61204149221315 天前
C语言做的迷宫生成与求解程序
c语言·敏捷开发·计算机图形学
用户61204149221320 天前
C语言做的文本词频数量统计功能
c语言·后端·敏捷开发
泉城老铁22 天前
idea 优化卡顿
前端·后端·敏捷开发
南方者24 天前
基于Amazon Bedrock Agent 的两个服务示例的完整流程与详细内容,包含技术架构、实现细节、交互逻辑及扩展能力
人工智能·ai编程·敏捷开发
用户61204149221324 天前
C语言做的停车场管理系统
c语言·后端·敏捷开发
南方者1 个月前
文心文心,其利锻心!这个古风射覆,它帅到我了!文心快码 3.5S
前端·敏捷开发·文心快码
艾小码1 个月前
还在拍脑袋估工时?3个技巧让你告别加班和延期!
前端·敏捷开发
睿创咨询1 个月前
IPD敏捷开发“三步走”实践分享
敏捷开发·敏捷流程·ipd·集成产品开发·睿创咨询