2012年12月10日星期一

Ada Lovelace


Ada Lovelace

编辑本段简介:

阿达·奥古斯塔,19世纪诗人拜伦的女儿,数学家。穿孔机程序创始人,建立了循环和子程序概念。为计算程序拟定“算法”,写作的第一份“程序设计流程图”,被珍视为“第一个给计算机写程序的人”。
阿达
  阿达

编辑本段生平:

1815年生于伦敦,她是英国著名诗人拜伦(L.Byron)的女儿。因父母婚姻破裂,出生5星期后就一直跟随母亲生活。母亲安娜·密尔班克(A.Millbanke)是位业余数学爱好者,阿达没有继承父亲诗一般的浪漫热情,却继承了母亲的数学才能。
阿达19岁嫁给了威廉·洛甫雷斯伯爵,因此,史书也称她为洛甫雷斯伯爵夫人(Lady Lovelace)。由于巴贝奇晚年因喉疾几乎不能说话,介绍分析机的文字主要由阿达替他完成。阿达的生命是短暂的,她对计算机的预见超前了整整一个世纪。阿达早逝,年仅36岁,与她父亲拜伦相似。根据她的遗愿,她被葬于诺丁汉郡其父亲身边。
阿达设计了巴贝奇分析机上解伯努利方程的一个程序,并证明当时的19世纪计算机狂人巴贝奇的分析器可以用于许多问题的求解。她甚至还建立了循环和子程序的概念。由于她在程序设计上的开创性工作,Ada Lovelace被称为世界上第一位程序员。当时的阿达甚至不顾自己已是三个孩子的母亲,坚定地投身于分析机研究,成为巴贝奇的合作伙伴。在1843年发表的一篇论文里,阿达认为机器今后有可能被用来创作复杂的音乐、制图和在科学研究中运用,这在当时确是十分大胆的预见。以现在的观点看,阿达首先为计算拟定了“算法”,然后写作了一份“程序设计流程图”。这份珍贵的规划,被人们视为“第一件计算机程序”。

编辑本段程序语言

美国国防部据说是花了10年时间,把它所需要软件的全部功能混合在一种计算机语言中,希望它能成为数千种电脑的标准。1981年,这种语言被命名为ADA(阿达)语言[1]。1985年,北大西洋公约组织更进一步决定,自翌年元月始,ADA语言将是北约组织指挥控制工程中唯一使用的高级程序设计语言。
ADA语言的命名,正是为了纪念杰出的英国女数学家阿达的功绩。人们现在都认为,阿达是世界上第一位软件设计师,有的书刊甚至称她是“软件之母”。
阿达全名奥古斯塔·阿达·拜伦(Ada Augusta Byron),是英国著名大诗人拜伦的独生女。1815年12月10日,她出生在伦敦城内一幢可以远眺绿色公园的老房子里。
阿达自小命运多舛,父亲路德·拜伦(L.Byron)充满着诗人的狂热,很有些喜怒无常的疯狂劲;母亲安娜·密尔班克(A.Millbanke)却是位业余数学爱好者,性格沉静、安祥。他们的婚姻是不幸的,就在阿达出生刚5个星期,拜伦夫人为了孩子提出与丈夫分居。拜伦就此离开了英国,到日内瓦同另一大诗人雪莱夫妇一同旅居。诗人虽然离开了英国,可也感到非常懊悔,但他始终没有回去看女儿一眼,只能用诗来表达自己对女儿的思念和歉疚,他的一首诗的名字就叫《阿达》。1824年,诗人拜伦死于希腊,年仅36岁。临死前唯一牵挂的人就是他8岁的女儿。
没有更多的材料介绍阿达的童年。可能是从未得到过父爱的缘故,小阿达没有继承到父亲如诗般的的浪漫,却继承了母亲的毅力和数学才能。母亲担心阿达长大后可能会像父亲一样疯狂,因此不许女儿学习什么诗歌,她希望孩子将来成为一位“分析家和心理学者”。但是,阿达性格中毕竟有诗人的遗传因子,她爱幻想,幻想着成长为科学家,在30岁那年,在给母亲的一封信里,阿达写到:“假如你不能给我诗,难道不能给我诗一样的科学?”
当时英国科学风气盛行,就连许多妇女也都在杂志上发表文章探讨数学问题。阿达17岁那年,母亲请到了著名数学家摩根做她的老师,摩根是计算机数学基础布尔代数的创始人之一。在他的影响下,阿达的数学天赋得到了充分的展现。同时,阿达还被介绍到当时著名数学家和翻译家玛丽·莎莫维琳(M.Somerville)夫人那里学习,玛丽夫人曾将拉普拉斯的著作翻译为英文,其译著被剑桥大学采用。夫人由衷地喜欢这个聪慧刻苦、充满幻想的小女孩,不断地鼓励她打破世俗观念,争取在数学方面有所成就。
阿达少女时代印象最深的一件事,是摩根先生的夫人领着她和一群女孩,去参观巴贝奇的差分机。其他女孩子围着差分机叽叽喳喳乱发议论,感到摸不着头脑。只有阿达看得非常仔细,她十分理解并且深知巴贝奇这项发明的重大意义。
临到要走时,小阿达还在恋恋不舍地看着巴贝奇操作机器。 巴贝奇回头对女孩打趣道:“就像野人见到望远镜吧?”
“不,您的机器会自动计算数学题,野人才不懂它的价值。不过,有几个疑问我还没弄懂,您能为我单独讲讲吗……”
或许是这个小女孩特殊的气质,阿达也在巴贝奇的记忆里留下了深深的印象。
1833年6月5日,巴贝奇在自己家庭组织的舞会上,正式会见了阿达。那时的巴贝奇,正在四处游说他正在酝酿中的分析机设想,却很少有人理解,以为他是在“痴人说梦”。面对一个理解他思想的人,巴贝奇当即将自己的想法详细地讲给阿达听。阿达认真地听完巴贝奇的计划,并仔细看了他的文稿,深深地为之陶醉。凭着她深厚的数学功底和丰富的想象力,阿达认为,这的确是一个将要改变世界的伟大设想,她表示一有机会将亲身参与这项工作。
阿达的母亲曾试图阻止阿达与巴贝奇的交往,认为巴贝奇是个江湖骗子。然而,阿达却不听母亲的劝阻,1836年元月18日,她提起笔来,给巴贝奇写下了第一封信,希望巴贝奇能够做她学习数学的导师。此后,两人信件往来不断,共同的追求使他们结为忘年交,友谊整整延续了18年之久。
经玛丽夫人介绍,阿达19岁嫁给了一位比她大11岁的绅士威廉·罗德·金。不久后,丈夫被册封为洛甫雷斯伯爵。按照英国的习俗,许多资料在介绍阿达时,都把她称为“洛甫雷斯伯爵夫人”(Countess of Lovelace)。阿达和丈夫的关系非常亲密,家庭生活十分温馨,更值得庆幸的是,洛甫雷斯伯爵对妻子的工作也很感兴趣,给予她极大的支持。他们婚后生了三个孩子,阿达为了研究工作无暇照看,是母亲帮助把孩子们扶养成人。作为一个女性,这种行为在当时的英国遭来了不少的非议。
亲自参与分析机研究是阿达的夙愿,这个机会终于让她等来了。1840年,巴贝奇来到意大利的都灵,在各种会议上多次介绍他的分析机。几乎所有的人都嗤之以鼻,只有三个人坚定地与他站在一起。一个是他的儿子,后来成为少将的亨利·巴贝奇;一个当然是洛甫雷斯伯爵夫人,另外一位,则是后来担任过意大利总理的数学家闵那布利( L.Meneblea)。1942年,闵那布利将巴贝奇关于分析机的讲演和谈话,编辑成为一本书的手稿。由于这部手稿是用法文写的,为了扩大影响,阿达执意要动手将其翻译成英文。
阿达的翻译工作做得异常出色,一年之后,她居然把245页纸的原稿“翻译”成为542页的著作,加进了自己所写的297页。巴贝奇发现,阿达不仅在著作中加入了她天才的想象,而且补充了许多独到的见解。她特别强调存储程序和数据的重要性,而这与今天的计算机技术不谋而合。阿达对计算机应用前景的展望,连巴贝奇自己从来都没有想过。阿达认为,计算机应该发展成一个可用符号来表示任何事物的装置,她还预见到计算机可以绘图、演奏音乐,以及应用于其他科学领域。
阿达对著作的修改,使巴贝奇深感惊奇和鼓舞,他多次对人称赞说:“阿达真是个充满想象力和洞察力的女孩,她是数字女神,把诗歌的激情融入了她写的书中。”其实,阿达的最大贡献不仅仅是诗一般的语言,经她“翻译”的这本书,可以称为程序设计的第一部专著。她在著作中非常得体地评价道:“分析机‘编织’的代数模式同杰卡德编织的花叶完全一样”,她建议分析机应该把十进制编码改为二进制。于是,为分析机编制一批函数计算程序的重担,落到了数学才女柔弱的肩头。
阿达开天辟地第一回为分析机编出了程序,其中包括计算三角函数的程序、级数相乘程序、伯努利数计算程序等等,现在被视为是“第一套计算机软件”。阿达编制的这些程序,即使到了今天,电脑软件界的后辈小子们仍然不敢轻易改动一条指令,足见其功夫之臻美。她还设计出系列程序设计方法,包括循环和递归,以及类似于我们今天使用的流程图。在17世纪的英国,很少有女子能够出版学术专著,为了替妇女争得一席之地,阿达决定在手稿上署上自己名称的缩写字母:A.L.L。
在以后的日子里,阿达竭尽全力替巴贝奇把分析机的思想向外界传播。由于巴贝奇晚年因喉疾几乎不能说话,如果没有阿达清晰的解说,后人可能根本不了解分析机的详情。她曾激情地写到:“这台机器不论在可能完成的计算范围、简便程度以及可靠性与精确度方面,或是在计算时完全不用人参与方面,都超过了以前的机器。”在生前给巴贝奇的最后一封信里,她正确地评价说:“分析机谈不上能创造什么东西。但它能做我们命令它做的任何工作。它能进行分析但不能预知任何分析关系或真理。它的本份是帮助我们去实现我们已知的事情。”今天我们看到这些话,可能不会感到惊讶,但在150多年前的科学界,还没有任何人做出过如此精辟的预言。
1852年11月27日,世界软件业的先驱、巾帼英雄奥古斯塔·阿达,因患癌症医治无效,魂归黄泉,没能看到计算机软件辉煌的那一天。与她的父亲拜伦一样,阿达只活了短短的36年。应她生前的要求,阿达被下葬在诺丁汉郡她父亲的墓穴旁。在她的心目中,依然深深地眷念着“诗一样的科学”。
一代才女英年早逝,给计算机界留下了无尽的思念。