50 多年前的代码,就已经能让程序员看不懂了.pdf
文本预览下载声明
50 多多年年前前的的代代码码,,就就已已经经能能让让程程序序员员看看不不懂懂了了
上周四,前 NASA 的实习生 Chris Garry 将当时科学家 阿波罗 11 号 (Apollo 11)登
月所编写的部分原始代码放到了 Github 上。
尽管这段代码早在 2003 年已经被研究员 Ron Burkey 从原始文件中转录到了网络上,
但这是第一次公众能如此快捷地获取到这段代码。
代码公布后,引发了互联网上的一轮讨论热潮。
Twitter 上很多人表示看不懂这段 50 多年前编写的代码
大家除了研究这些距今已经 50 多年,很多程序员已经很难看懂的程序语言之外,也
发现了当时科学家在代码注释中写下的一些有趣的细节和调侃。
比如说这段代码注释, BURN_BABY_BURN MASTER_IGNITION_ROUTINE.s (燃
烧吧,宝贝儿,控制点火程序)
在注释中他们详细解释了这段代码的出处,是一个 1965 年发生在洛杉矶的故事。
还有这段以 HELLO 和 GOODBYE 结尾,一段反映团队成员之间交流的的代码注释。
有些科学家们还会 自己编写的程序加几句评论,比如这段 TRASHY LITTLE
SUBROUTINES in LUNAR_LANDING_GUIDANCE_EQUATIONS.s. (这位科学家评
价自己写的这段代码是“无用小垃圾” )
还有一些颇具诗意的科学家,他们甚至引用了莎士比亚的语录。
当时科学家们采用的还是一种非常初级的汇编语言进行编程,NASA 在此基础上创造
了其独特版本的汇编语言,因此现在看起来更加的晦涩难懂。
阿波罗 11 号( Apollo 11)是美国航空航天局登月计划中的一部分。1969 年宇航员阿
姆斯特朗首次登月,他说的那一句 “这只是我的一小步,却是人类的一大步” 你或许
还记忆犹新,但距离人类首次登月时间已经过去了 50 多年。
这 50 多年间,计算机技术发生着迅猛的变化。上世纪 60 年代的计算机还是由晶体管
电路所搭载的,阿波罗 11 号 (Apollo 11)登月项目也是电脑软件第一次担任如此重
要的关键角色。
50 多年前,当麻省理工的程序编写小组想要为阿波罗编写一套系统时,他们甚至连应
该用什么工具编写都不知道。
这是当时被写满了代码的文档,叠起来比研究员 Margaret Hamilton 还要高
这套复杂难懂的汇编语言现在可能已经没有什么人能看得懂,也不再广泛适用于编程
领域。但是这并不妨碍人们用调侃的方式来表达对这段已经过时了的代码的兴趣,在
Github 上有人在阿波罗 11 号 (Apollo 11)的讨论区创建了名为 MATTDAMON.s 的
文件。
是的,他们打算用这段代码把马特·达蒙从火星救回来。
题图来自 QUARTZ
喜欢这篇文章?去 App 商店搜 好奇心日报 ,每天看点不一样的。
好好奇奇心心日日报报 ,, 每每个个时时代代都都有有最最好好的的媒媒体体。。
显示全部