那时,理查德·格林布莱特还不是黑客。几年以后,作为黑客的鼻祖,当他的大名在遍及全美的各个计算机中心变得无人不知、无人不晓的时候,当他一心一意向自己的目标努力奋斗的故事被人广为传颂,一如他编写的数百万行汇编代码被人广为使用的时候,有人不禁纳闷:这一切究竟是怎么开始的?他坐在椅子上,转过身来,现在的他看上去已不再像当年读大学本科时那样邋遢,一张胖乎乎的娃娃脸,头发乌黑,不善言辞。关于这个问题,他将其归结为“黑客到底是天生的还是后天修炼的”,然后便给出了他那老调重弹、被人戏称为“布莱特主义”的论断:“假如黑客是天生的,那么他们还要经过后天的磨炼;假如他们通过修炼而得道,那么他们便是天生的黑客。”
格林布莱特承认自己是一名天生的黑客。
这倒不是说从他第一次接触pdp-1计算机后便改变了他人生的轨迹。是的,他就是对计算机有股痴迷劲儿。那个礼拜恰巧是mit本科新生开学前的最后一周,理查德·格林布莱特在投入学业之前还有一段空闲时间,这段时间发生的事情注定会造就他在计算机领域的辉煌成就。他到一个最吸引他的地方去了一趟:学校的广播电台wtbs(mit的校园广播电台也许是全美唯一一个聘用了大量的学生音响工程师但却没有几个唱片音乐节目主持人的大学广播电台),tmrc,以及26号楼的klugeroom房间,其中安放着一台pdp-1计算机。
有几名黑客正在玩《太空大战》电子游戏。
玩这个游戏通常有个规矩,就是要把这间屋子的灯关掉,这样一来,围在控制台四周的人脸便会因屏幕上宇宙飞船和点点繁星的照射而发出奇怪的亮光。一张张全神贯注的脸被计算机的光芒照亮——这一幕深深地印在了格林布莱特的脑海中。他欣赏了一会儿游戏中的宇宙大碰撞后,就到隔壁房间观看那台tx-0计算机,它有一排排电子管和晶体管,与众不同的电源,还有数不清的信号灯和开关。他曾作为高中数学俱乐部的一员参观过位于密苏里州哥伦比亚市的州立大学的批处理计算机,他还见过当地一家保险公司有一台巨大的卡片分类机。但是这台计算机和它们都不一样。虽然对广播电台、tmrc特别是那台计算机念念不忘,但他还是开始努力在学业上争取好成绩。
然而,他这份立志做好学生的想法没有保持太长时间。和其他mit的平庸学生相比,格林布莱特亲自动手尝试的愿望更加强烈。1954年,格林布莱特的父亲来看他,他父母早年离异,打那之后,他就没跟父亲生活在一起。父亲将格林布莱特带到密苏里大学学生会馆(memorialstudentunion)所在地,这里距离格林布莱特在哥伦比亚市的家不远。从这一天起,他的生活被不可逆转地改变了。格林布莱特立刻就喜欢上了这里。除了舒适的大厅、电视、饮料售卖台以外,他喜欢这里最主要的原因是这里的大学生们,时年仅仅9岁的格林布莱特更多地把他们当做了智力竞赛的对象,而不是同学。他经常到那里下国际象棋,并且通常都能轻而易举地击败那些大学生。他是个国际象棋高手。
他的手下败将中有一名因得益于gi法案sup/sup而在密苏里大学学习工程的学生,名叫莱斯特。莱斯特给予这名9岁天才的馈赠便是手把手地带他进入了电子世界。在这个世界中,1就是1,2就是2,没有半点含糊。在这个世界中,一切都是由逻辑构成的。如果你通过努力学习获得了一个可以控制一切的学位,你就能按照你自己的想法制作任何东西。当时年仅9岁的小格林布莱特因超常的智力水平在同伴中往往感觉不自在,对于这个深受人类社会中司空见惯的父母离异的影响,但自己却又无能为力的孩子来说,电子学绝对是一个极好的“避风港湾”。
莱斯特和格林布莱特一起做业余无线电方面的项目,还会将旧电视机大卸八块。大学毕业前,莱斯特将格林布莱特介绍给了一个叫霍顿的人认识,这个人在当地开了一家无线电用品商店。后来,这家商店成了年轻的格林布莱特高中时的第二个家。格林布莱特和一位高中同学一道做了一系列项目。项目中用到了放大器、调制器、各式各样难看的真空管装置,还有示波器、蹩脚的无线电设备、电视照相机。对,电视照相机!看起来好像是个不错的思路,于是他们决心自己动手构建它。等到了要选择上哪所大学的时候,理查德·格林布莱特没有过多犹豫就选择了mit。1962年秋季,他正式成为该校的一名大学生。
第一学期的课程非常严格,但格林布莱特完成得比较顺利。慢慢地,他开始有机会接触到大学里的计算机了。他幸运地选修了一门编号为ee641的选修课——计算机编程入门,并经常到eam的打孔机那里给ibm7090计算机编写程序。另外,他的室友迈克·比勒则学习一门叫“列线图解法”(nomography)的课程。所有上课的学生都有机会亲自上机使用ibm1620计算机——这台机器又是放在一个被少数特权人士所独占的地方。格林布莱特经常陪着比勒去1620计算机的机房,先给一摞卡片打上孔,然后就排队等着。等轮到他们了,他们就将卡片逐个插到阅读器里,绘图机/打印机立刻就能输出结果。“这其实挺有意思的,就像在晚上玩的那些游戏一样有趣,”比勒后来回忆道,“在别人看体育比赛的时候,或者出去闲逛、喝啤酒的时候,我们就用这种方式摆弄计算机。”虽然上机的时间有限,但他们很喜欢。这激发起格林布莱特进一步学习计算机的欲望。
圣诞节前后的那段时间,他常常和tmrc的那些人混在一起,这终于让他感觉舒服多了。整天跟着像彼得·萨姆森这样的人,很容易进入一种“黑客模式”(计算机的各种状态称为“模式”,黑客们常常借用这样的词汇描述他们日常生活的状态)。萨姆森一直在为这家俱乐部壮观的铁路模型编写控制操作过程的程序,这个程序要求严格按照一张详尽的时间表运行。根据对数字的要求,萨姆森已经在7090计算机上用fortran语言编写完成了一个这样的程序。格林布莱特决心在pdp-1计算机上编写第一个fortran语言。至于为什么要这么做,他不会对任何人讲——机会要靠自己争取,它是等不来的。如果你想在一台计算机上完成某个任务,但这台计算机上又没有可用的软件,那么给它编一个这样的软件便是自然而然的想法了,然后就可以做自己想做的事情。这就是促使格林布莱特后来的编程水平提升至艺术级的那股动力。
像萨姆森一样,他也做到了。他的软件可以让你用fortran语言编程,将fortran语句代码编译成机器语言,也可以将计算机的机器语言反编译成fortran语言。由于没有足够的pdp-1上机时间,编写fortran编译器的工作主要是格林布莱特在他自己的房间内完成的。此外,他还在tmrc参与了设计新型底层布局系统的工作。这间屋子的墙皮似乎一直在往下掉(这里的墙壁不论以什么标准来衡量都糟透了,不过这不能怪物业公司,因为他们也属禁止入内的人员之列),并且他们的系统直接嵌入了部分墙壁里面,这是20世纪50年代中期杰克·丹尼斯干的好事。除了这些,还有一个新元件叫“线簧继电器”,这个比以前那个旧的看上去强多了。所以格林布莱特花了大量的时间调试这个新元件。即使再忙,他也没有耽误继续钻研pdp-1计算机。
事情的发展真是滑稽。当你开始一心要做一名好学生,努力提高学习成绩时,你会发现自己会以另外一种眼光重新审视自己的课程:在课堂上学的那些东西和自己正在做的完全风马牛不相及。自己手头正在做的是研究、升级或建造系统,并且显而易见的是,钻研系统只是想让它能动起来,那是一种旨在让自己得到满足的追求。至少tmrc的人或钻研pdp-1计算机的人似乎都没把他们正在做的事当做哪怕是一个有益的论文课题来看待。虽然计算机是一台非常复杂的机器,但是它与人类社会中的变化无常、来来往往和错综复杂的人际关系还是没法相比。不过与正式或非正式的社会科学方面的研究不同,对科技的钻研不仅可以让你增长知识,而且还可以让你对控制技术逐渐痴迷起来,使你产生一种错觉,即你只需再增加几个功能就能达到掌控一切的目标了。因此,你就会自然而然地用恰当的方法着手在系统内部增加那些似乎必不可少的功能。照此下去,系统功能越完善,你反而会觉得有更多的事情等着你去做。然后有个人(比如马文·明斯基)可能碰巧走过来说:“这儿有个机械臂,我要把它放在这台机器旁边。”一下子,你会觉得世界上没有什么比制作机器人和机械臂之间的接口更重要的事了,你要让这根机械臂听你指挥,还要让这个机器人知道它自己在干什么并为之建立一个系统。接着你的辛勤劳动终于开花结果了。作为一名工程人员,你发明创造的哪样东西可以比得上这个更有意义?你的工程学教授从来没有解决过什么有趣的问题,甚至有趣程度连你当前每天在pdp-1计算机上所解决问题的一半也没有,这就是你的机会。可你们俩到底谁对?
格林布莱特在大二的时候,和他一起研究pdp-1计算机的人员有了很大的变动。虽然最初在tx-0上做研究的那批人离开了好几个,但是又有新的血液输入进来。重新调整后的小组得到了国防部的资助,他们的信心更强了,在研究工作中配合得非常默契。后来他们又添置了一台pdp-1计算机,这台机器安放在新落成的一座9层高的长方形大楼内——这座大楼位于mainstreet大街,普通得让人感觉有些麻木:大楼表面没有任何突起,没有窗台的窗户看起来好像是直接喷绘在雪白的墙面上一样。这座大楼名为“科技广场”(techsquare),mit和入驻校园的企业客户将这里称为"projectmac"。pdp-1计算机安放在大楼的9层,这层楼培育出了整整一代的计算机黑客,他们当中在这里消磨时间最多的就是格林布莱特。
有几个黑客(包括格林布莱特本人)在为这个系统工作,有的刚刚开始开发某个涉及人工智能方面的大型项目。他们几个以学生身份受聘的员工还有工资收入(低于最低工资标准)。从这时开始,大家逐渐注意到这个礼貌但略显拘谨的大二学生很可能是未来pdp-1计算机方面的超级巨星。
格林布莱特像变戏法似的编出了大量的代码,他有时会聚精会神地投入到钻研工作中,有时则拿着一大摞打印出来的代码坐在一旁,用笔在上面做着标注。他兼顾pdp-1计算机上的研究和tmrc内的任务,脑子里考虑的尽是程序代码的结构或者他参与设计的俱乐部模型的底层系统。为了能够长时间保持精神集中,他和几个同伴夜以继日地工作——他们每天按照30个小时来过。这种作息时间有利于从事高强度的研究工作,因为平白无故地多出了一段不睡觉的时间可以用来编程。一旦你真的照此方式生活,像睡觉这样不重要的事便不会再来打扰你的工作了。这个想法的目的是让他们的精力保持30个小时,直到精疲力竭,然后回家睡上12个小时。不过也可以在实验室打地铺。然而这个作息时间表有个小小的缺点,就是它会让你的作息时间与现实世界中其他人的正常作息时间不一致,进而影响很多事情,如约会、就餐和上课。但黑客自有办法。常常会有黑客这样询问:“格林布莱特现在处于什么时间?”刚刚见过他的另一个黑客可能这样回答:“我想他正在晚上,大概9点左右的样子。”可是教授们没法自如地调整到那些状态,因此格林布莱特只好旷课。
校方让其留校察看。格林布莱特的母亲于是亲自来到马萨诸塞和校方协商。她为此大费了一番唇舌。“他妈妈非常担心,”他的室友比勒后来说道,“她说她儿子到这里上大学是要拿学位的。但他整天在计算机上忙活的是一个高精尖的项目,此前从没有人涉猎过这个领域。他有另外一些事情要做,想让他对课堂上的知识产生兴趣真的很难。”对格林布莱特来说,他一点也不在乎自己即将因学习成绩太差而面临退学的危险。做他自己的研究才是最重要的:这些事他不仅做得很好,而且乐此不疲。
当他因为作息时间“黑白颠倒”而睡过了头,没有赶上参加一次期末考试以后,最糟糕的时刻终于降临了。与此同时,他也不能再待在mit的这个学生团体内了。如果没有这样一条规定——当你从mit退学,你也就没有资格继续作为学生员工待在这里,那么因成绩太差而退学对格林布莱特来说,他的生活完全不会有任何改变。因此,格林布莱特要去找一份工作,一心一意地要找一份白天编程的工作,这样他就能在晚上留在这个地方——科技广场大楼的9层,继续钻研他的系统。他确实这么做了。
还有一位同样出众的黑客,他也用与众不同的方式掌握了pdp-1计算机。他的口才比格林布莱特好,他能够更加有条理地讲清楚计算机是如何改变了他的生活以及可能怎样改变所有人的生活。这名学生就是比尔·高斯珀。他比格林布莱特早一年进入mit,但迷上pdp-1计算机的时间却比格林布莱特晚。高斯珀身材消瘦,五官特征和鸟类相近,戴一副既厚且大的眼镜,褐色的头发又脏又乱。虽然其貌不扬,但是只要跟他有过短暂的接触,你一定会相信这个人的聪明才智绝对可以将事物之间的微妙关系(包括他自己的五官面貌)处理得井井有条。他是一个数学奇才。可以说,研究数学(而不是系统)的愿望使他对计算机产生了兴趣。格林布莱特和其他才华横溢的以研究各种系统为目标的学生们现在已经建立了一个全新的projectmac项目,这些人就好像长机,而高斯珀则在很长的时间内扮演他们的僚机,两者相辅相成,翱翔长空。
高斯珀是新泽西州彭索金镇人,他的家与费城仅一河之隔。在来mit就读前,他对计算机的接触也仅限于从玻璃窗后面观看巨型机的操作而已,这一经历与格林布莱特一样。他还清楚地记得在费城的富兰克林学院看到一台univac(通用电子计算机)在与它相连的行式打印机上打印出本杰明·富兰克林的相片。高斯珀根本不明白原理是什么,但是觉得特别有趣。
就在他进入mit的第二个学期,他有生以来第一次亲自动手操作了计算机。他选修一门由约翰·麦卡锡大叔亲自讲授的课程——这门课仅对大一学生中上学期的平均成绩较高的学生开设。这门课程由fortran语言开始,接着讲到ibm机器语言,最后也涉及一些pdp-1计算机的有关知识。不过这位教授留给他们的作业却很难,例如用7090计算机跟踪穿过光学系统的光线轨迹,或在pdp-1计算机上用新的浮点解释器编几段代码等。
来自编程的挑战大大激发了高斯珀的兴趣。经过在ibm计算机上的批处理折磨以后,pdp-1计算机对他来说就像兴奋剂令他欲罢不能,令他不知疲倦。多年以后,高斯珀在谈到那时的心情时,兴奋之情仍溢于言表:“你会一把将键盘抱在怀里,就好像那是一个有血有肉的人,然后让这台计算机在几毫秒内对你的动作做出反应……”
不过,在这门课程结束以后,高斯珀还是对继续在pdp-1计算机上探索采取小心谨慎的态度。那时他已是数学系的学生了,数学系的人一直告诫他只有远离计算机才能变得聪明——显然,数学系的人想把他变成一名牧师。高斯珀发现数学系有一条非正式的口号——“世界上根本没有‘计算机科学’——那是巫术!”好吧,高斯珀就想做一名巫师!他报名参加了明斯基讲授的有关人工智能的课程。这门课又要求用pdp-1计算机了,而这一次,高斯珀对钻研计算机本身产生了浓厚的兴趣。在那个学期中,他曾写了一个在屏幕上绘制函数的程序,这是他做的第一个真正的项目。其中一个子例程中有一段代码写得非常巧妙,他大着胆子拿给阿伦·考托克看。那时考托克已经非常有名了,高斯珀认为他如有神助,这种判断不仅来自他在pdp-1上的辉煌成绩和tmrc那些人的反应,而且还因为考托克在dec公司有一项重要的工作,就是设计比pdp-1更加先进的新型计算机。考托克仔细检查了高斯珀的代码,认为他编写得非常不错,完全可以拿给其他人看。高斯珀高兴极了。“考托克也认为我编的程序很不错!”于是他就信心百倍地开始编写更多的程序。
在这个过程中,他的一个重大课题就是尝试着“解决”一款名叫pegsolitaire(hi-q)游戏中的难题。这款游戏的棋盘是一个加号的形状,上面有33个小孔。除了中间那个孔以外,每个小孔里都有一枚棋子(peg)。当一枚棋子跳过另一枚棋子时,可以将经过的那枚棋子(后者)“吃掉”。最终的目标是在棋盘的正中间只留下一枚棋子。当高斯珀和其他两位同学向明斯基提出请求,由他们用pdp-1计算机来解决这个问题时,明斯基虽然并不认为他们能够完成这个课题,但还是鼓励他们不妨尝试一下。最后,高斯珀和他的朋友们完成了任务——“我们把其他的棋子都吃光了。”他后来说。其实这几个人还编了一个程序,让pdp-1计算机在一个半小时内解决了这个游戏中的难题。
高斯珀非常欣赏计算机解决pegsolitarie游戏(hi-q)sup7/sup难题的方法,因为这种方法不是靠直觉来决定行动方案的。计算机程序使用的各种技巧看上去似乎不太合适,但却能够在该场合下利用深奥的数学原理来解决问题,这一点让他对计算机程序充满了深深的敬佩。这种和直觉背道而驰的解决方法源自于对无数数学关系之间神秘联系的理解,而这些数学关系正是程序编写的基础所在。找出那些数学关系就是高斯珀要做的,也可以说他要在计算机上以另一种方式进行数学研究。随着对pdp-1的接触越来越多以及参与tmrc的工作日益增多,他成了一名大家不可或缺的首席“数学黑客”——他虽然对系统程序没有太大的兴趣,但是他能够给大家提出一些思路极其清晰的(非直觉的!)算法,这些算法很可能会帮助系统黑客去除某个子例程中的几条多余指令,或者令大家顿开茅塞,走出思维的误区。
高斯珀和格林布莱特分别代表了tmrc的成员以及钻研pdp-1计算机的黑客中两种不同的研究类型:格林布莱特专注于具备实用价值的系统建设,高斯珀则侧重于数学方面的探索。这两类人都对对方的长处心悦诚服,他们会一起参与项目,密切协作,在各自擅长的领域内力争做到最好。不仅如此,这两类黑客共同对科技广场大楼第9层所孕育的、虽处于萌芽期但已经蓄势待发、准备怒放的黑客文化之花做出了重要贡献。在各种因素的共同作用下,就是在这间技术温室中,他们的文化慢慢变得枝繁叶茂,将黑客道德推向了一个前所未有的极致。
这些黑客的行动辗转于几个不同的地点之间。某些“夜猫子”黑客们仍旧会光顾klugeroom房间里的那台pdp-1计算机(它现在已经用上了杰克·丹尼斯花了一年时间编写的分时操作系统),特别是到这里来打《太空大战》电子游戏。但是真正的黑客则越来越偏爱projectmac那里的pdp-1计算机。这台计算机和其他机器一起放在科技广场大楼灯光刺眼、没有什么摆设的第9层大厅内。为了让这里各种各样的计算机能够正常工作,空调也不得不开足马力,发出“嗡嗡”的声音,吵得人只想躲到为数不多的几间小小的办公室里去。最后一个地点就是tmrc,这里有似乎永远也卖不光的自动可乐售卖机和桑德斯制造的换瓶机,隔壁就是堆满了各种东西的toolroom。人们在这里一待就是一整夜,争论在外人听来有如天书一般晦涩难懂的各种观点。
这些争论是黑客圈中的家常便饭。有时他们会扯着嗓子相互叫喊,坚持自己的汇编程序的编码方案,或者某个具体类型的接口,或者某种计算机语言中的一个特别功能。黑客们在对这些不同观点的讨论过程中往往会用力捶打黑板甚至将粉笔摔向房间的另一头。这种争吵行为并不代表他们真的固执己见,他们只是想弄清楚什么才是“正确答案”(therightthing)。对于黑客,“正确答案”这一术语意味着对于任何问题来说(不管是编程过程中的两难选择、硬件接口不匹配,还是软件架构的问题),总是存在着一种解决方法,这就是“正确答案”了,也就是最天衣无缝的算法。当你的工作深入到某个关键之处的时候,此时人人都能看到两点之间已经可以用一条直线连接起来了,那么进一步找出更好方法的努力便显得画蛇添足。“正确答案,”高斯珀后来解释说,“指的是那种非常具体的、独一无二的、第一流的正确解决方案……它在同一时刻能够满足所有的约束条件。每一名黑客似乎都相信绝大多数问题都存在这么一种‘正确答案’。”
高斯珀和格林布莱特两人都比较固执,不过通常格林布莱特讨厌面对面、容易产生不快的争论,他会躲到一旁去做点什么,有时是有用的工作,有时则不是。在他看来,事情总要有人去做。假如其他人都不去做,那么他就去做。他会坐在桌旁,用铅笔和纸写点什么,或者坐在pdp-1的终端前,尖声尖气地把自己的代码念出来。格林布莱特的程序是健壮的,换句话说就是这些程序的基础非常坚固,里面的纠错部分可以使程序不会因一个错误导致系统崩溃。每当格林布莱特编完一段程序以后,他总是会对这段程序进行全面调试。高斯珀认为格林布莱特比他见过的任何一个人都更喜欢查错和改错,甚至怀疑格林布莱特有时会故意写几条错误代码以便今后可以修改。
高斯珀喜欢以公开的方式编程。他希望有观众在旁观看自己工作,通常这样的观众是一些初级黑客。他们会拉张椅子,坐在他后面,看着他在控制台上编写一段段完美的程序,这些程序都会带有一些数学兴趣点。高斯珀尽情地展示着他的工作内容,例如让大家看看一个不常见的算法会诱发crt上出现一连串无法预测的耀眼亮斑。随着程序的运行,高斯珀像导游一样详细讲解,有时还会重点强调即使一个小小的输入错误也可能产生有趣的数字现象。计算机常常可能做出无法预测的反应,这种反应所产生的现象一直让他如痴如狂。他对机器的这种表达方式表现出无限的尊重。有时,看上去绝对是随机发生的事件可能让他的思绪突然转向,去思考一个离题万里的无理数二次方或超越函数的含义。还有的时候,高斯珀程序中某个子例程的巫术可能偶尔演变成一份学者气很浓的备忘录,其中一个备忘录的开头这样写道sup8/sup:
有理论认为:可能由于连分数不可穷尽的特性,导致连分数无法被充分利用,我就此提出以下讨论,阐述关于连分数与其他数值表示法相比的优势所在。
在toolroom内出现的各种争论绝非大学里气氛融洽的闲聊。考托克经常参加这些争论,正是在这些争论的过程中,他自己为dec设计的计算机(即pdp-6型)方案中也有几个关键问题得以解决。这款pdp-6型计算机甚至早在设计阶段就被tmrc的人奉为绝对的“正确答案”。有一次考托克开车送高斯珀回南泽西度假。他一边开车,一边说起他设计的这款新型计算机会有16个独立的寄存器。(寄存器,或称累加器,就是计算机内实际进行计算的元件。16个寄存器会令计算机的用途扩展到前所未闻的程度。)高斯珀想,那将是世界历史上最伟大的计算机!
当dec不出所料真的制造出了pdp-6计算机并将第一台原型机送到projectmac的时候,每个人都看得出来,尽管这台计算机具备了商业用户需要的所有基本功能,但是从本质上说,它还是一台黑客的计算机。考托克本人和他的老板戈登·贝尔(gordonbell)都饱受tx-0计算机那些功能上的条条框框所困扰,自从有了pdp-6以后,他们就再也无需为这些限制而烦心了。另外,考托克此前曾仔细听取过tmec内众黑客的意见,特别是听取了率先提出使用16个寄存器的彼得·萨姆森的意见。pdp-6的指令集可以满足用户的一切要求,计算机的整体架构完全对称。16个寄存器中的任何一个都可通过三种不同的方法访问,也可以组合这些方法访问不同的寄存器,这样一来,只用一条指令就能完成很多任务。这台pdp-6计算机还使用了一种“堆栈”技术,这项技术能够让程序员将子例程、程序和活动随意混合和对应。对黑客来说,pdp-6计算机及其功能强大的指令集能够让他们不必再像以前那样用蹩脚的方式表达自己的意图,因为他们现在已经拥有了一套全新的、内容丰富的词汇表,足以把自己内心的情绪准确地宣泄出来。
这台漂亮的海蓝色pdp-6计算机带有三个巨大的机柜,控制台看上去比pdp-1更加流畅自然,另外还有好几排闪亮的悬臂开关和一堆闪烁不定的指示灯。明斯基组织黑客给这台pdp-6重新编写系统软件。很快,他们就像当年痴迷pdp-1时一样,彻底被这台计算机征服了。但是,pdp-6计算机可以做的事情要比pdp-1多得多。一天,在tmrc隔壁的toolroom中,黑客们正忙着调试用不同的方法输出小数的程序,也就是让计算机输出阿拉伯数字的程序。有个人想出了个点子,要尝试一下pdp-6上几条全新的、用到堆栈的指令。此前没有任何人在他们自己的程序中用到过这些指令,可是,令所有人感到惊讶的是,这段通常要用一整页代码才能完成的功能,由于使用了一条名为"push-j"的指令,只用短短的6条指令便实现了。此后,tmrc的人一致同意,那条"push-j"指令绝对就是pdp-6引入的“正确答案”。
toolroom内的讨论和激辩常常持续到晚饭以后,此时黑客们基本上都会选择吃中餐。因为中餐价格便宜、种类多样,不过最重要的是,中餐馆会一直营业到深夜。几乎每周六的晚上10点以后,一群黑客(有时乘坐格林布莱特的蓝色1954款chevy敞篷汽车)都会奔向波士顿的唐人街(周一至周五的晚上有时也会去,不过这要视心情而定)。
中餐也是一个系统。黑客们对中餐的好奇一点也不亚于他们对新推出的lisp编译器的好奇。萨姆森自从第一次随tmrc一起外出到中央广场(centralsquare)的joyfong餐馆吃中餐起,就成为一名不折不扣的中餐爱好者了。到20世纪60年代早期,他已经认识了很多汉字,甚至能够看懂菜单并点些让别人一头雾水的菜肴。高斯珀喜欢中餐的劲头有过之而无不及,他会在唐人街东张西望,为的是看看哪家中餐馆一直营业到深夜。有一天晚上,他在一处不起眼的地方发现了个由夫妻俩开的小中餐馆。那里的菜肴味道一般,但他注意到来此就餐的华人都在吃一种看上去很奇怪的菜。于是他决定以后一定要带萨姆森来这里尝尝。
下次他们来的时候随身带着中文字典,然后向服务员索要菜单。餐馆的厨师是一位王先生,他慢吞吞地递过菜单。高斯珀、萨姆森和其他人都把脑袋凑过来看,好像这是一份新型计算机的指令集。萨姆森充当起了翻译,他的解释可以起到提示的作用。在英文菜单上的"beefwithtomato"sup/sup。而"wonton"sup/sup。看来,在这个系统中还有不少让人难以置信的事物等待他们去探索!在确定了哪些菜最有意思并决定就点这几样以后(“芙蓉翅膀?要一个吧,尝尝这到底是个什么味道”),他们把王先生叫过来。王先生叽里呱啦地讲了一大堆,意思是以华人的观点来看,他们点的菜根本无法搭配成一顿饭。很明显,他不愿意给他们上中国菜,因为他觉得美国人不会喜欢这种味道。看来王先生把这些黑客当做胆小的普通美国人了——可这些人的胆子一点也不小,他们本身就是一群探险家!他们一直致力于刻苦钻研计算机的奥秘,目标就是要将这些秘密(用汇编语言)大白于天下。王先生不再坚持了,他为他们端上了这些黑客们有生以来从未品尝过的最美味的中国菜。