当前位置: 首页 > news >正文

格蕾丝·霍珀:她让计算机开始“听懂人话”,也让编程走向大众

名人说:长风破浪会有时,直挂云帆济沧海。——李白《行路难》

创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊)

目录

    • 一、传奇起点:从数学博士到海军程序员
      • 1. 从小就喜欢“拆东西”的女孩
      • 2. 第二次世界大战改变了她的人生
    • 二、走进计算机:在 Mark I 上写程序
      • 1. 一个“程序员”尚未成为职业的年代
      • 2. 一只飞蛾与“Debug”的经典故事
    • 三、真正的革命:为什么不能让计算机理解人?
      • 1. 当所有人都认为“机器只认识机器码”
      • 2. A-0:早期编译器的重要突破
    • 四、FLOW-MATIC:第一次真正让程序接近“人话”
      • 1. 编程为什么一定要写数学符号?
      • 2. 从机器语言到英语式编程
    • 五、COBOL:让编程真正进入商业世界
      • 1. 一门影响半个多世纪的语言
      • 2. COBOL 到底有多像英语?
    • 六、她真正改变的,不只是一门编程语言
      • 1. 人不应该被机器绑架
      • 2. 编程应该让更多人使用
    • 七、迟来的荣耀:她的名字留在了计算机历史里
    • 八、今天再看霍珀:从编译器到AI,我们仍走在她开辟的路上

今天,我们使用 Python、Java、C++ 编程时,早已习惯写下人类可以理解的代码,然后交给编译器或解释器处理。

但如果把时间拨回到计算机刚刚诞生的年代,事情完全不是这样。

那时的程序员往往需要直接面对机器指令、数字代码和复杂的硬件结构。在很多人眼中,想使用计算机,就应该先学会计算机的语言。

但有一个人提出了完全相反的思路:

为什么一定要让人去适应机器?为什么不能让机器去理解人写的语言?

这个看似理所当然的想法,在20世纪50年代却极其大胆。

而提出并真正推动它走向现实的人,就是本文的主人公——格蕾丝·霍珀(Grace Murray Hopper)

她是数学家、计算机科学先驱、美国海军少将,也是早期编译器技术的重要开拓者。她参与了 Harvard Mark I 的编程工作,主持开发了 A-0、FLOW-MATIC 等早期编程系统,并对后来 COBOL 语言的形成产生了重要影响。

美国白宫后来称她为“Amazing Grace”和计算机软件领域的重要先驱。

图片:Grace Hopper 格蕾丝·霍珀

一、传奇起点:从数学博士到海军程序员

1. 从小就喜欢“拆东西”的女孩

1906年12月9日,格蕾丝·布鲁斯特·默里出生于美国纽约。

她从小就有非常强烈的好奇心。

相比于单纯接受一个东西“能用”,她更喜欢研究:

它为什么能工作?里面到底是什么?

这种对结构和原理的兴趣,后来也贯穿了她整个计算机生涯。

1928年,霍珀从瓦萨学院(Vassar College)毕业,学习数学和物理;1930年获得耶鲁大学数学硕士学位,1934年又获得数学博士学位,之后回到瓦萨学院教授数学。

在那个年代,一名女性能够获得数学博士学位本身就已经十分罕见。

但霍珀的人生,很快迎来了另一个转折点。

2. 第二次世界大战改变了她的人生

第二次世界大战期间,霍珀决定加入美国海军预备役。

1944年,她被派往哈佛大学的Bureau of Ships Computation Project,并进入霍华德·艾肯(Howard Aiken)领导的计算团队。

摆在她面前的,是当时最先进的计算设备之一:

Harvard Mark I。

这台机器与我们今天桌面上的电脑完全不同。

它由大量机械和电磁部件组成,体积庞大,编程方式也远没有今天这么友好。

霍珀成为 Mark I 最早的一批程序员之一,由此正式进入一个当时甚至还没有成熟名字的新领域——计算机编程。

图片:Grace Hopper 与 Harvard Mark I

二、走进计算机:在 Mark I 上写程序

1. 一个“程序员”尚未成为职业的年代

如今我们谈到程序员,会想到 IDE、Git、框架、数据库以及各种高级编程语言。

但在霍珀工作的时代,几乎什么都没有。

没有 Visual Studio Code。

没有 GitHub。

没有 Stack Overflow。

更没有 Python、Java、C++。

程序员必须非常了解机器本身,并将复杂的问题一步步转换成机器能够执行的指令。

这使编程拥有极高的门槛。

而霍珀逐渐意识到:

真正限制计算机普及的,可能不仅仅是硬件性能,还有人与计算机之间沟通的方式。

这个问题,最终促使她走向了自己最重要的研究方向——编译器。

2. 一只飞蛾与“Debug”的经典故事

霍珀还有一个几乎所有程序员都听过的故事。

1947年,Harvard Mark II 计算机出现异常。

工作人员检查机器后,发现一只飞蛾卡在继电器中

于是,他们把这只飞蛾取出来,直接用胶带粘在了运行日志上,并在旁边写下了大意为:

“第一次发现真正的 Bug。”

这张保存着飞蛾的日志后来成为计算机历史上的著名文物,如今由美国国家历史博物馆保存。


图片:Mark II 日志中真正的“Bug”

不过,这里有一个经常被误传的细节。

Bug 并不是霍珀创造的词,Debugging 也不是因为这只飞蛾才第一次出现。

在此之前,“bug”就已经被工程师用于描述机器或系统中的故障。

真正有趣的是,这一次机器里面真的出现了一只“虫子”。

所以,这件事成为计算机历史上最著名的程序员轶事之一。

从此以后,“找 Bug”“Debug”也成为了无数程序员每天都要面对的日常。

三、真正的革命:为什么不能让计算机理解人?

如果说 Mark I 让霍珀进入了计算机世界,那么编译器则真正让她在计算机发展史上留下了自己的名字。

1. 当所有人都认为“机器只认识机器码”

早期计算机编程非常接近机器本身。

程序员需要告诉计算机:

在哪里读取数据?

执行什么指令?

结果放在哪里?

下一步跳到什么位置?

霍珀却开始思考一个看起来有些“异想天开”的问题:

计算机为什么不能自动完成这些翻译工作?

程序员只负责描述自己想做什么。

至于怎样转换成机器可以执行的指令,交给另一个程序完成。

例如:

程序员编写的高级语言 ↓ 编译器 ↓ 机器能够执行的指令 ↓ CPU

今天看来,这几乎是编程领域最基础的工作流程。

但在当时,很多人并不相信这种方式能够实现。

2. A-0:早期编译器的重要突破

1949年,霍珀加入 Eckert-Mauchly Computer Corporation,开始参与 UNIVAC 计算机相关工作。

随后,她设计并推动开发了A-0 System

A-0 通常被视为计算机历史上最早的编译器系统之一,也是高级语言走向现实的重要里程碑。计算机历史博物馆的资料将其描述为 Hopper 的早期编译器工作,并指出后来的 A-0、A-2 等系统进一步推动了编译式编程的发展。

它背后的思想非常重要:

程序员不应该每一次都重新编写底层机器指令。

那些已经写好并验证过的程序,可以通过名字调用,再由系统自动找到对应代码并组合起来。

从今天的角度来看,这种思想已经深入现代软件开发:

print("Hello World")

我们不需要知道print()最终对应多少条机器指令。

也不需要自己控制 CPU 如何打印字符。

因为这些复杂工作,已经被一层又一层的软件抽象替我们完成。

而霍珀所推动的,正是这种改变:

让程序员逐渐远离机器细节,把注意力放回“解决问题”本身。

四、FLOW-MATIC:第一次真正让程序接近“人话”

1. 编程为什么一定要写数学符号?

有了编译器之后,霍珀并没有停止。

她又提出了一个更加大胆的想法:

既然计算机能够翻译程序,那为什么不能直接使用接近英语的语句编程?

这一次,她面对的质疑更大。

很多程序员认为:

计算机是数学机器。

程序就应该使用数学符号和机器语言。

让计算机处理英语?

没有必要。

甚至是不可能的。

但霍珀坚持了下来。

她带领团队开发出了FLOW-MATIC

FLOW-MATIC 是早期使用接近英语语句进行商业数据处理的编程语言之一,并成为后来 COBOL 形成过程中最重要的技术来源之一。

图片:FLOW-MATIC 编程资料

2. 从机器语言到英语式编程

FLOW-MATIC 最大的突破,并不是某一个具体语法。

而是改变了人们对于“编程语言”的理解。

过去是:

人 → 学习机器语言 → 控制计算机

霍珀希望变成:

人 → 使用更自然的语言描述任务 ↓ 编译器 ↓ 计算机执行

这里真正改变的是:

人与机器之间的主动权。

以前,是人类努力学习机器。

后来,越来越多的软件开始帮助机器理解人类。

这条路从汇编语言、高级语言、编译器一路发展,最终形成了今天庞大的软件生态。

五、COBOL:让编程真正进入商业世界

1. 一门影响半个多世纪的语言

1959年,美国政府和计算机行业组织专家讨论建立一种通用的商业编程语言。

这个项目最终诞生了:

COBOL(Common Business-Oriented Language,通用商业导向语言)。

霍珀并不是 COBOL 的“唯一发明者”。

这一点需要特别说明。

COBOL 是一个委员会协作产生的语言,霍珀担任相关工作的技术顾问,她此前推动的 FLOW-MATIC 以及“使用接近英语的方式编程”的理念,对 COBOL 的形成产生了重要影响。

因此,与其简单把她称作“COBOL唯一创造者”,更准确的说法是:

她是 COBOL 最重要的先驱和推动者之一。

2. COBOL 到底有多像英语?

我们来看一个简单的 COBOL 程序:

IDENTIFICATIONDIVISION.PROGRAM-ID.HELLO.PROCEDUREDIVISION.DISPLAY"Hello, World!".STOPRUN.

即使完全没有学过 COBOL,大概也能猜到它要做什么。

这就是霍珀一直推动的方向:

代码应该更加接近人的表达方式,而不是让所有人都去适应机器。

今天我们使用 Python:

print("Hello, World!")

使用 JavaScript:

console.log("Hello, World!");

程序语言越来越强调:

可读性、抽象、封装和开发效率。

从某种角度来看,这正是霍珀当年坚持的方向不断向前延伸的结果。

六、她真正改变的,不只是一门编程语言

如果只把格蕾丝·霍珀理解成“COBOL先驱”,其实远远低估了她。

她真正推动的是一种新的计算机哲学:

1. 人不应该被机器绑架

早期程序员需要理解大量机器细节。

霍珀却不断推动计算机软件提高抽象层次。

机器码:

01001000 01100101 01101100 01101100 01101111

汇编语言:

MOV AX, BX

高级语言:

printf("Hello World");

Python:

print("Hello World")

再到今天,我们甚至可以直接告诉 AI:

帮我写一个读取 Excel 文件, 统计每个月销售额, 然后生成柱状图的 Python 程序。

从机器语言到高级语言,再从高级语言到自然语言驱动的软件开发,人类一直在做同一件事情:

不断缩短“人的想法”与“机器执行”之间的距离。

而霍珀,是这条道路上最早、也最坚定的推动者之一。

2. 编程应该让更多人使用

编译器真正伟大的地方,并不仅仅是节省了几行代码。

它改变了软件开发的参与门槛。

因为如果世界上所有程序员都必须直接操作机器码,那么计算机永远只能属于极少数专家。

只有当工具越来越简单、语言越来越高级、抽象越来越完善,越来越多的人才能开始编程。

从这个角度来看:

霍珀推动的不只是编译器的发展,也是计算机从少数专家工具走向大众的重要一步。

七、迟来的荣耀:她的名字留在了计算机历史里

1992年1月1日,格蕾丝·霍珀去世,享年85岁。

她被以完整军事荣誉安葬于阿灵顿国家公墓。

但她的名字并没有随着时代远去。

2016年,美国总统奥巴马追授霍珀总统自由勋章(Presidential Medal of Freedom),这是美国最高等级的平民荣誉之一。白宫在介绍她时,再次强调了她在编译器以及让编程语言更加实用、易用方面的重要贡献。

奥巴马政府在纪念计算机科学先驱时,还曾用一句非常简洁的话概括她的历史地位:

如果莱特兄弟代表飞行,爱迪生代表电灯,那么霍珀代表代码。

从 Harvard Mark I,到编译器;

从 FLOW-MATIC,到 COBOL;

从数学博士,到海军少将;

她的一生横跨了现代计算机最重要的早期发展阶段。

图片:Grace Hopper 晚年

八、今天再看霍珀:从编译器到AI,我们仍走在她开辟的路上

今天再看 Grace Hopper,她最重要的意义,不只是开发了什么程序,而是推动了一个至今仍不过时的理念:

让技术更简单,让计算机更懂人。

从机器指令到高级语言,从编译器到今天的 AI,计算机一直在降低人与机器交流的门槛。

几十年前,霍珀推动计算机理解更接近人类的编程语言;几十年后,我们开始尝试让计算机直接理解自然语言。

技术在变,但问题没有变:

如何让人与机器之间的距离更近一点?

她没有独自创造 COBOL,却坚定推动了编译器、高级语言和机器无关编程的发展。

她所坚持的目标很简单:

让计算机适应人,而不是永远让人适应计算机。

格蕾丝·霍珀,让编程一步步从机器的世界,走向了人的世界。

专栏✅:《计算机名人堂》,欢迎订阅催更,谢谢大家支持!

创作者:Code_流苏(CSDN)

http://www.jsqmd.com/news/1394792/

相关文章:

  • 图像色彩表示方法:YUV、YCbCr
  • 【2026年中科院一区SCI】自适应角色分工优化算法Adaptive Role Division Optimizer-附Matlab免费代码
  • 重庆配眼镜哪里好,别再花冤枉钱了,不花冤枉钱 - 配眼镜新资讯
  • 2026年电动牙刷品牌推荐 徕芬上榜舒适体验度参考 - 优质品牌中立测评推荐
  • 青岛配眼镜去哪好,5家店真实对比,一篇讲清楚 - 配眼镜新资讯
  • 2026年研究方法写作工具梳理:青泥AI Flow等平台实测盘点 - 拜了拜了
  • AI 搜索引用率追踪机制解析:从数据采集到可见性验证的技术方案
  • 2026年研究框架撰写工具挑选攻略:青泥AI Flow及优质平台盘点 - 拜了拜了
  • 天道十三十四集
  • 重庆配眼镜推荐,上班族护眼先要看清这几个关键点 - 配眼镜新资讯
  • 2026稳居前列无人机维修培训 诚信办学打造行业知名** - 湖南阳光技术
  • 2026 年现阶段,西安口碑好的防撞护栏定制厂家哪个好,别再小瞧路边那道不起眼的防护!它竟能在关键时刻拦住失控的大货车,救你一命 - 行业推荐官-2
  • 最好用的AI生成原型工具(UI设计APP网页交互零基础上手)
  • 2026年最新指南:重庆市大渡口配镜场景经验,从验光流程到选店避坑的实用参考 - 小校长
  • GLM-5.3 技术测评:后训练 Scaling 极限,编程能力提升 50%
  • podman通过Dockerfile自定义镜像
  • 青岛配眼镜哪里好,验光准价格实的店在这,亲测有效 - 配眼镜新资讯
  • 上海君澜律师事务所孙青律师团队——上海房产分割诉讼业务 - 孙青律师13681945561
  • ZBrush 雕刻、PBR 材质、引擎渲染全流程拆解,梵映线上游戏建模课与盛绘艺点面授课程内容差异详解 - 生活动态圈
  • 三轮车托运要多少钱?2026跨省托运价格表+避坑指南 - 快递物流资讯
  • 成都涉税鉴证报告找哪家税务师事务所?机构选择与出稿流程指南 - A11enMeng
  • 规模设备如何高效实施远程运维管理?贝锐向日葵提供智能化路径
  • 5大网络安全实操平台,免费练手入门,轻松掌握攻防技能
  • GaP 方法通俗讲解 - S-X
  • Hough变换用于UiO数字图像分析研究附Matlab代码
  • 上海宝山新材料大厂防腐通风管道、粉尘废气、消防排烟工程案例|金洼环保 - 天下观知
  • 重庆配眼镜看这篇,性价比之选在这里,省钱攻略 - 配眼镜新资讯
  • 王益评价高的Q245R直缝管/Q355B钢板卷管供应商-鑫众森钢管 - 行业鉴选官
  • 解决IDLE中文输入法下回车键弹窗问题的技术分析与实践方案
  • 重庆配眼镜推荐,渐进多焦点镜片到底适不适合你 - 配眼镜新资讯