愛達·奧古斯塔·拜倫(Ada Augusta Byron)。 奧古斯塔·愛達·金,勒芙蕾絲伯爵夫人(Augusta Ada King, Countess of Lovelace,1815年12月10日-1852年11月27日),原名奧古斯塔·愛達·拜倫(Augusta Ada Byron),通稱愛達·勒芙蕾絲(Ada Lovelace),是著名英國詩人拜倫之女,最著名的事跡為翻譯意大利人查爾斯·巴貝奇早期的程式設(shè)計書《分析機概論》(analytical engine),愛達對翻譯查爾斯·巴貝奇的《分析機概論》所留下的筆記,被認(rèn)為對現(xiàn)代電腦與軟件工程造成了重大影響。 愛達是她詩人父親—拜倫與母親安妮·伊莎貝拉·米爾班奇(Anne Isabella Milbanke)唯一的合法子嗣。她的名字取自拜倫的異母的姊妹奧古斯塔·李(Augusta Leigh)。拜倫與安妮貝拉的婚事是在奧古斯塔為了避免丑聞,而慫恿拜倫與安妮貝拉結(jié)合的產(chǎn)物。然而,在1816年1月16日,安妮貝拉還是離開拜倫,帶著一個月大的愛達離開。同年4月21日,拜倫簽下了分居協(xié)議,并離開英國。 愛達從未見過她同父異母的妹妹阿拉格·拜倫(Allegra Byron),阿拉格是拜倫與克萊爾·克萊蒙(Claire Clairmont)所出,但于1822年死去,得年5歲。至于愛達的另一位親戚伊麗莎白·梅朵拉·李(Elizabeth Medora Leigh,是奧古斯塔·李之女)則有與她照過面,并由愛達的母親告知愛達與梅朵拉彼此的身世。 不幸的童年 編輯本段回目錄愛達·奧古斯塔·拜倫(Ada Augusta Byron)1815年12月10日生于英國倫敦。她的父親是英國著名詩人喬治·拜倫(George Gordon Noel Byron,1788-1824),母親是數(shù)學(xué)家安娜·伊莎貝拉(Anna Isabella Milbanke)。熱戀時,拜倫曾戲稱他未來的妻子是“the Princess of Parallelograms”(平行四邊形公主)??磥?,興趣愛好的巨大反差,埋下了不幸的種子。 愛達出生后的第一個悲劇就是父母的離異。她父母的婚姻只維持了一年零半個月:1815年1月2日結(jié)婚,1816年1月16日離婚,這時愛達出生僅37天。 第二個悲劇應(yīng)該是幼年喪父。我們知道,拜倫于1816年4月25日離開倫敦出國,而且一直沒有再回英國。他先在瑞士生活,后來到了意大利,又轉(zhuǎn)至希臘。在那里,他還參加過希臘反對土耳其的獨立戰(zhàn)爭。37歲時病故于希臘的Missolonghi,這時愛達才8歲,好在她一直沒有見過自己的父親。 愛達的母親希望女兒成為一名數(shù)學(xué)家,而不是詩人。盡管也讓女兒學(xué)習(xí)鋼琴,那是為提高她的音樂素養(yǎng),而不是讓她從事藝術(shù)。不過,愛達與母親在一起的時間并不多。她的童年主要是在祖母呵護下度過的。然而祖母Noel Byron夫人1822年逝世,愛達只有7歲。 嚴(yán)格的教育 編輯本段回目錄既然愛達的母親安娜對數(shù)學(xué)有興趣,而且對“既瘋又壞”(mad and bad)的丈夫深惡痛絕,當(dāng)然就把希望寄托在女兒身上,渴望并鼓勵她發(fā)展理性的修養(yǎng),而抵制父親浪漫主義色彩的影響。于是,愛達接受了近乎嚴(yán)酷的教育。 愛達6歲時,母親雇了家庭女教師雷蒙特小姐(Miss Lamont)在家里對她進行啟蒙教育。安娜強烈相信,數(shù)學(xué)作為一門智力的學(xué)科,必須讓它在愛達的頭腦里牢牢扎根。她認(rèn)為打好數(shù)學(xué)基礎(chǔ)將為愛達提供穩(wěn)定的、理智的社會地位,而這也是針對“粗魯、輕率、自負(fù)、搪塞和狂妄的良好解毒劑?!? 安娜希望女兒喜歡數(shù)學(xué),然而女兒卻愛好地理,她花很少的時間學(xué)習(xí)數(shù)學(xué),以便應(yīng)付母親的嚴(yán)格要求。安娜發(fā)現(xiàn)女兒敷衍后,既要處罰愛達,如關(guān)到小黑屋反省,又要斥責(zé)并辭退雷蒙特小姐。所以家庭教師的更換比較頻繁。而愛達不免要說點小謊話以搪塞母親。例如,寫一些無關(guān)痛癢的檢討:“我,愛達,沒有好好記筆記,明天一定把它做好?!?I, Ada, have not done the Notes very well, but I‘ll try to do it better tomorrow)。 在愛達的家庭教師名單中,有幾位數(shù)學(xué)家參與。其中既有平庸之輩,也有赫赫有名的數(shù)學(xué)大師。下面我們列舉幾位: 首先應(yīng)該談到的是威廉·弗雷德(William Frend)。他曾經(jīng)教過安娜,現(xiàn)在又來教愛達。這時他年事已高,竟然不相信有負(fù)數(shù)存在,更談不上了解數(shù)學(xué)的最新進展。 其次必須提及的是勞倫斯小姐(Miss Arabella Lawrence),安娜請她把13歲的愛達那偏好爭辯的性情改變過來。不過,愛達身體不佳,又染上麻疹,休息了好長一段時間。 還有威廉·金(William King)博士,他1829年也忙過愛達的數(shù)學(xué)教育。但這位博士的數(shù)學(xué)根基不深,他自己也坦白他學(xué)習(xí)數(shù)學(xué)是通過閱讀而不是作研究(by reading it rather than by doing it)。此后若干年,雖然他還給愛達一些幫助,但在1834年他寫給愛達的信中,直率地承認(rèn)“在您的學(xué)習(xí)中,很快就能把我難倒(you will soon puzzle me in your studies)”。 大師的影響 編輯本段回目錄除了以上三位平庸之輩,在愛達的一生中,受過三位世界級大師的培養(yǎng)。這就是女科學(xué)家瑪麗·莎沫維勒(Mary Fairfax Greig Somerville,1780-1872);計算機鼻祖查爾斯·巴貝奇(Charles Babbage,1791-1871);數(shù)理邏輯學(xué)家德·摩根(Augustus DeMorgan,1806-1871)。三位大師彼此之間有多年交情,對愛達栽 培的默契可能是她短暫一生感受到的最大幸福。 1830年由于母親安娜與女科學(xué)家瑪麗·莎沫維勒的交往,15歲的愛達也成為瑪麗家的??汀,旣愑袃蓚€女兒與愛達年齡差不多,愛達經(jīng)常去瑪麗家里,度過一個個美好的夜晚。瑪麗則帶她們一起去聽音樂會,還經(jīng)常去倫敦大學(xué)聽地理學(xué)講座。后來,她們成立了女學(xué)者聯(lián)誼會,組織參觀博物館,拜訪科學(xué)家等活動。正是這些活動使愛達認(rèn)識了巴貝奇?,旣惏褠圻_當(dāng)作自己的女兒一樣,給她數(shù)學(xué)書籍、指導(dǎo)她的學(xué)習(xí)、為她設(shè)計思考問題。師徒之間無所不談,她們暢談數(shù)學(xué)問題以及其他自然科學(xué)問題,特別是討論巴貝奇及其制造的計算機器。此外,她們也談?wù)撘魳贰⒗L畫等藝術(shù),以及爭取婦女受教育權(quán)與選舉權(quán)等政治問題。 1833年6月5日,在一次聚會上愛達認(rèn)識了查爾斯·巴貝奇。兩周后她和母親一起拜訪了巴貝奇在倫敦的工作室,在那里她看到差分機的演示以及對分析機的設(shè)計。愛達立刻為這些機器著迷,這給巴貝奇留下深刻的印象。當(dāng)時花季妙齡的愛達出落得已令人入神,據(jù)索菲亞·弗雷德(她是威廉·弗雷德的女兒、德·摩根的妻子)回憶,“像她這樣年輕,能理解機器的工作,而且看到這一發(fā)明的無比美妙(young as she was, understood its working, and saw the great beauty of the invention)”。此后她就與分析機結(jié)上了不解之緣。 1841年,在巴貝奇的建議下,德·摩根專門對愛達的數(shù)學(xué)研究進行了高級的個別指導(dǎo)。 瑪麗·莎沫維勒的魅力編輯本段回目錄女科學(xué)家瑪麗·莎沫維勒寫過許多著作,這些著作對創(chuàng)立電磁理論的麥克斯威都有很大影響。不過我國讀者對她可能比較陌生,有必要在此多談一下。 瑪麗1780年12月26日生于蘇格蘭,1872年11月29日卒于意大利那不勒斯,享年92歲。她的父親William George Fairfax是英國海軍官員,曾擔(dān)任過艦隊副司令。他有兩兒兩女,兒子都受過良好的教育,女兒卻按照當(dāng)時的風(fēng)氣,沒有受教育的必要。瑪麗只上過一年學(xué),就離開那所既沒有給她快樂、又沒有給她知識的牢籠?;丶液?,她開始讀所有能夠找到的書,而且自修拉丁文、練習(xí)鋼琴與繪畫。 1804年瑪麗與俄國海軍軍官Samuel Greig結(jié)婚。這位丈夫既缺乏科學(xué)知識,又對鉆研學(xué)問毫無興趣。三年后他病死,瑪麗只好帶著孩子回到蘇格蘭。在朋友的鼓勵下,她開始鉆研數(shù)學(xué)和自然科學(xué)。在她的朋友圈中,有皇家軍事學(xué)院數(shù)學(xué)教授William Wallace,愛丁堡大學(xué)自然哲學(xué)教授John Playfair。這段時間,她還讀了牛頓和拉普拉斯的數(shù)學(xué)與天文學(xué)著作。 1812年瑪麗又與William Somerville結(jié)婚。這位丈夫是醫(yī)院督察,他積極支持瑪麗對自然科學(xué),如對植物學(xué)、地質(zhì)學(xué)的研究。他們又結(jié)識了學(xué)術(shù)界的許多朋友,如愛丁堡數(shù)學(xué)教授John Leslie(1766-1832),物理學(xué)家David Brewster(他發(fā)明了萬花筒,kaleidoscope)。1816年,她丈夫調(diào)到倫敦工作,而且參與皇家學(xué)會的工作。于是全家搬到倫敦居住,從而結(jié)識了更多學(xué)界名流。如經(jīng)常去看望巴貝奇,他正在制造機械式計算機。還有George Airy(1801-1892,英國數(shù)學(xué)家,研究過觀察誤差的理論),John Herschel(1792-1871,英國天文學(xué)家,研究過哈雷彗星。他是巴貝奇在劍橋的同窗好友),William Herschel(John Herschel的父親,英國天文學(xué)家,發(fā)現(xiàn)了天王星),George Peacock(1791-1858,英國數(shù)學(xué)家,研究代數(shù)的邏輯處理,他也是巴貝奇在劍橋的同窗好友)。同時,在倫敦也有機會與到訪的外國著名科學(xué)家見面,如法國大數(shù)學(xué)家拉普拉斯(Pierre-Simon Laplace,1749-1827),泊松(Simon Poisson,1781-1840),Louis Poinsot(1777-1859),Emile Mathieu(1835-1890)等。 1827年根據(jù)知識傳播學(xué)會的請求,瑪麗著手翻譯拉普拉斯的《天體力學(xué)》(Laplace: The Mechanism of the Heavens)。事實上,瑪麗不僅是單純的翻譯,她還詳細解釋了當(dāng)時英國數(shù)學(xué)家不熟悉的概念與方法。這本書于1831年問世,大獲成功,贊美之詞不絕于耳。 1834年她出版了《物理科學(xué)的聯(lián)系》(The connection of the physical sciences),其中討論了對天王星進行干擾的假想行星。該書導(dǎo)致英國天文學(xué)家亞當(dāng)斯(John Couch Adams,1819-1892)的研究,并最終發(fā)現(xiàn)了海王星。 愛達和她的母親安娜成為瑪麗·莎沫維勒家庭的朋友。瑪麗熱情地鼓勵、幫助愛達研究數(shù)學(xué),這使她真正喜歡上數(shù)學(xué)。同時,愛達還從瑪麗身上感染到對整個自然科學(xué)的熱愛。 瑪麗的榮譽像潮水般涌來,她成為皇家天文學(xué)會會員。英國首相每年給予她津貼。1838年瑪麗丈夫的健康惡化,他們移居意大利?,旣愒谝獯罄冗^大半生,又寫了許多著作。1848年出版的《物理地理學(xué)》(Physical geography)是她最成功的著作之一,直到20世紀(jì)初,英國許多大學(xué)還用它作教科書。 瑪麗強烈呼吁婦女應(yīng)該有受教育的權(quán)利、有選舉和被選舉的權(quán)利。1879年牛津大學(xué)用她的名字命名了瑪麗·莎沫維勒學(xué)院,就是對她這種精神的肯定和褒獎。 德·摩根的嚴(yán)格要求 編輯本段回目錄學(xué)過數(shù)學(xué)的人,應(yīng)該都知道數(shù)學(xué)歸納法,它是德·摩根首先提出的;學(xué)過計算機的人,大都知道有個德·摩根定理,它對邏輯運算十分重要。德·摩根是在愛達結(jié)婚并生孩子后,按照巴貝奇的建議,對她進行了嚴(yán)格的數(shù)理邏輯的輔導(dǎo)。因為她在為巴貝奇的分析機編制程序時需要這方面的知識。 德·摩根1806年6月27日出生于印度馬德拉斯邦的Madura,當(dāng)時他的父親John De Morgan是英國陸軍上校,正在印度服役。他是家中第五個孩子,出生不久右眼失明。七個月就隨家返回英國。在學(xué)校,德·摩根因為殘疾并無什么擅長,從來不和其他男孩一起運動,相反卻經(jīng)常成為同學(xué)作弄的犧牲品。他10歲時父親去世。1823年德·摩根16歲時進入劍橋三一學(xué)院,在那里他遇到老師Peacock 和Whewell,他們成為終生的好友。在那里他取得了學(xué)士學(xué)位,但要取得碩士學(xué)位就必須進行神學(xué)考試,對此他很反感。然而沒有碩士學(xué)位,他在劍橋就很難獲得獎學(xué)金。1826年他返回倫敦家中。1827年他在新建立的倫敦學(xué)院大學(xué)(University College London)申請數(shù)學(xué)系主任的職位,雖然當(dāng)時他尚無數(shù)學(xué)專著,但還是得到應(yīng)聘。1828年德·摩根成為該大學(xué)第一位數(shù)學(xué)教授,在就職演講中他談了對數(shù)學(xué)的研究。1830年德·摩根發(fā)表了數(shù)學(xué)著作《算術(shù)原理》(Elements of arithmetic),這部著作曾經(jīng)多次再版。1831年他原則上辭去系主任的職務(wù),但1836年再次擔(dān)任系主任,一直到1866年。 1838年德·摩根引入并定義了數(shù)學(xué)歸納法(mathematical Induction),圍繞這個題目他寫過許多文章。德·摩根還出版過有關(guān)微積分的著作(The Differential and Integral Calculus)。1849年出版了有關(guān)三角學(xué)的著作(Trigonometry and double algebra),他對復(fù)數(shù)給出幾何學(xué)的解釋。他認(rèn)識到代數(shù)的純符號本質(zhì),注意到多種代數(shù)的存在,而不限于普通代數(shù)。他引入了德·摩根定理,對數(shù)理邏輯進行了大膽的改革,這大概是德·摩根最偉大的貢獻。德·摩根1871年3月18日在英國倫敦去世。 1835年7月8日愛達·拜倫與威廉·金(William King)結(jié)婚,當(dāng)然這個人并不是前面提到過的數(shù)學(xué)教師Dr. William King。1838年愛達的丈夫威廉·金被封為拉夫拉斯伯爵(Earl of Lovelace),因此愛達也獲得拉夫拉斯伯爵夫人(Countess of Lovelace)的稱號。他們結(jié)婚后,有了三個孩子:大兒子叫了外祖父的名字Byron Noel,1836年5月12日出生;女兒叫了外祖母的名字,Anne Isabella,1837年9月22日出生;小兒子仍然留有外祖父的痕跡Ralph Gordon,1839年7月2日出生。這應(yīng)該算是愛達短暫一生的第二個幸福了。 創(chuàng)新的注釋 編輯本段回目錄如上所述,愛達18歲時聽了巴貝奇關(guān)于設(shè)計差分機的講演,從而對巴貝奇的機器產(chǎn)生了濃厚的興趣。后來又對全新的分析機特別地著迷。從1836年1月18日開始,愛達給巴貝奇寫信,探討分析機的各種問題。一直到生命結(jié)束,她給巴貝奇寫了大量的信件。這是研究愛達編程思想的重要資料。 但最有代表性的文獻,卻是愛達翻譯一本書時所加的注釋。那是1842年10月,法國工程師Luigi Federico Menabrea(1809-1896)發(fā)表了一篇關(guān)于巴貝奇分析機的理論和性能的文章。愛達把它由法文譯成英文,而且在其中加入她的許多注釋。 關(guān)于這個工作,巴貝奇有一段精彩的回憶:“在日內(nèi)瓦綜合書目上出現(xiàn)Menabrea關(guān)于這個機器的實錄后,有一天晚上拉夫拉斯伯爵夫人告訴我,她已經(jīng)把這篇東西由法文翻譯成英文。我問她,為什么不就這個題目自己寫一篇原創(chuàng)性的論文,你是能夠非常親切地介紹這個機器的。拉夫拉斯伯爵夫人答復(fù)道:她的思想還沒有形成。然后我建議她在Menabrea的文章上加些注釋。這個建議立即被她采納了?!薄拔覀円黄鹩懻摿吮仨氁氲母鞣N插圖,我建議了幾個,但是否選擇完全由她決定。還有一些不同問題的代數(shù)工作,例如有關(guān)伯努利數(shù)的計算,為了減少她的麻煩,我給出一些計算。結(jié)果她寄來一份修訂,糾正了我在計算中的一個重大錯誤?!薄袄蚶共舴蛉说淖⑨尡仍牡拈L度擴展了三倍。她全力以赴,對于和這個題目有關(guān)的很困難、很抽象的問題都作了解釋。把這兩個資料一起提供給讀者,就能理解機器的工作原理,并通過完整的示范,了解如何使用分析機去執(zhí)行分析開發(fā)的任務(wù)?!? 最早的編程設(shè)想 編輯本段回目錄在這些注釋中,愛達描述了分析機如何進行編程,最早給出計算機程序設(shè)計的許多想法。下面給出幾個注釋的內(nèi)容,以饗讀者: 注釋A:說明設(shè)計中的“分析機”與已存在的“差分機”的區(qū)別。她的討論預(yù)言了通用計算機(general purpose computer)的作用,這超出了巴貝奇的想象。她表明分析機可以接受各種各樣的穿孔卡:“控制卡”、“數(shù)據(jù)卡”、“操作卡”,它們?nèi)绾问褂嬎銠C自動地對輸入的數(shù)據(jù)完成正確的操作。換句話說,計算機能“分析數(shù)據(jù)”。她還提議數(shù)字和其他符號如字母都可以“編碼”成數(shù)字?jǐn)?shù)據(jù),機器可以處理它們,并給出寫成的數(shù)據(jù)。她甚至要為分析機能產(chǎn)生音樂而奮斗。 注釋B:愛達討論了分析機的記憶能力,她把記憶裝置稱為“倉庫”。她提出了存儲位置或地址的想法。她指出插入“注解或備忘”的可能性,計算機不會執(zhí)行它們,但可以讓人們簡明地了解程序?qū)⒆呦蚝畏健? 注釋C:愛達引入“返回”(backing)的概念,制作一個操作卡返回到某個位置,而它就是將要工作的下一個數(shù)據(jù)卡。她解釋這樣做的原因是:“在解決一個問題的方案中,能確保某個特殊的穿孔卡或者一組卡能成功地使用若干次”(to secure the possibility of bringing any particular card or set of cards into use any number of times successively in the solution of one problem)。這個思想我們今天稱為“循環(huán)”(looping),愛達和巴貝奇早就討論過這個問題。 注釋D:愛達解釋了如何使用操作卡、返回、倉庫以及各種控制卡,以寫成一個指令序列,去完成一個特定的操作集合。 注釋E:她解釋了機器如何擁有三角函數(shù)和其他函數(shù)。這就在計算機內(nèi)部引入了內(nèi)建函數(shù)(built-in function)的思想。 注釋F:她給出利用返回處理(循環(huán)),僅通過重復(fù)幾個操作,來解一個任意大小的線性方程組。她詳細寫出解十元線性方程組的程序。她還推測通過簡單的循環(huán)過程生成素數(shù)表的可能性。 注釋G:愛達警告讀者,如果輸入“不真實”的信息,那么計算機就不能做任何事情。今天我們把這稱為“輸入垃圾,輸出垃圾”(Garbage in, Garbage out)。她寫到:“分析機不能自命不凡,無論什么問題都能解決。它只能完成我們告訴它如何做的事情。它能遵循分析,但沒有能力預(yù)期任何分析關(guān)系或事實?!?The Analytical Engine has no pretensions whatever to originate anything. It can do whatever we know how to order it to perform. It can follow analysis; but it has no power of anticipating any analytical relations or truths)。在注釋G中,愛達還寫了一個程序,讓分析機生成伯努利數(shù)的表。 由上可知,愛達獲得世界上第一位計算機程序員的榮譽是當(dāng)之無愧的。 辭世與紀(jì)念編輯本段回目錄由于受子宮癌和賭博債務(wù)的折磨,有的文獻還說她曾經(jīng)吸毒,這位悲劇性的人物愛達過早地于1852年11月27日去世,生命周期與她的父親拜倫同樣短促,都只有37歲。最后與她的父親一起,埋葬在諾丁漢郡Hucknall鎮(zhèn)拜倫家族的墓地。 當(dāng)年36歲。很諷刺的,她與她父親拜倫死于相同年齡,一樣死于治療中的失血過多。她留下了兩個兒子與一位女兒—安妮·布蘭特貴女。依她的遺言,愛達葬于諾丁漢哈克諾的圣 瑪麗亞·抹大拉教堂,長眠在父親的身旁。 愛達的形象完美地體現(xiàn)了一位程序員應(yīng)該具備的科學(xué)家與藝術(shù)家的雙重氣質(zhì)。一方面,程序員需要在數(shù)學(xué)概念、形式理論、符號表示等基礎(chǔ)上工作,應(yīng)該有科學(xué)家的素養(yǎng)。另一方面,對于一個高效的、可靠的、便于維護的軟件系統(tǒng),又必須刻畫它的細節(jié),并把它組成一個和諧的整體,所以程序員又應(yīng)該有藝術(shù)家的氣質(zhì)。 1975年1月,美國國防部(DoD)提出統(tǒng)一高級語言的必要性,并為此在國際范圍內(nèi)招標(biāo)。1979年5月,從四種入圍語言中最后選定了一種?,F(xiàn)在,該給它起個什么名字呢?總不能把它稱為DoD-1語言吧。國防部通過與英國拉夫拉斯伯爵的繼承人萊頓(Lytton)伯爵協(xié)商,決定把新語言命名為Ada語言,以此紀(jì)念愛達在130年前對程序設(shè)計的歷史貢獻。于是,愛達的名字、生平與事跡才廣為世人傳誦。 身后影響力編輯本段回目錄她死后一百年,于1953年,愛達之前對查爾斯·巴貝奇的《分析機概論》所留下的筆記被重新公布,并被認(rèn)為對現(xiàn)代計算機與軟件工程造成了重大影響。 計算機科學(xué) 大眾文化 Ada 語言編輯本段回目錄ada 1、Ada是一種表現(xiàn)能力很強的通用程序設(shè)計語言,它是美國國防部為克服軟件開發(fā)危機,耗費巨資,歷時近20年研制成功的。它被譽為第四代計算機語言的成功代表。美國國防部之所以把這種語言取名為Ada,是為了紀(jì)念奧左斯特·艾達·洛夫萊斯伯爵夫人(Augusta Ada Lovlace,1815-1852),她是英格蘭詩人拜倫(Byron)勛爵的女兒,曾對現(xiàn)代計算機技術(shù)之父查爾斯·巴貝奇(Charles Babage,1791-1871)的筆記、手稿進行了整理和修正。從某種意義上說,她是世界上第一位計算機程序員。 與其他流行的程序設(shè)計語言不同,Ada語言不僅體現(xiàn)了許多現(xiàn)代軟件的開發(fā)原理,而且將這些原理付諸實現(xiàn)。因此,Ada語言的使用可大大改善軟件系統(tǒng)的清晰性、可靠性、有效性、可維護性。Ada是現(xiàn)有的語言中無與倫比的一種大型通用程序設(shè)計語言,它是現(xiàn)代計算機語言的成功代表,集中反映了程序語言研究的成果。Ada的出現(xiàn),標(biāo)志著軟件工程成功地進入了國家和國際的規(guī)模。在一定意義上說,Ada還刺破了“馮·偌依曼思維模式” (Von Newman Mind-set) 的桎梏,連同Ada的支持環(huán)境(APSE)一起,形成了新一派的所謂Ada文化。它是迄今為止最復(fù)雜、最完備的軟件工具。Ada語言是美國國防部指定的唯一的一種可用于軍用系統(tǒng)開發(fā)的語言,我國軍方也將Ada作為軍內(nèi)開發(fā)標(biāo)準(zhǔn)(GJB 1383《程序設(shè)計語言Ada》)。 Ada最初設(shè)計時關(guān)注于3個最重要的問題:程序的穩(wěn)定性和可維護性,程序設(shè)計和人的行為接近,并且高效。這份語言的修訂版是為了提供更大的靈活性和擴展性,存儲管理的額外控制和同步,以及標(biāo)準(zhǔn)化的程序包以支持重要的應(yīng)用程序領(lǐng)域,同時保留原來的重點。對于程序設(shè)計語言促進可靠性和簡化維護難度的需求已被確立。因此程序可讀性的重要性高于輕松地寫代碼。例如,語言規(guī)則要求程序變量應(yīng)當(dāng)明確聲明并指定它們的類型。由于變量的數(shù)據(jù)類型是不變的,編譯器可以確保對于變量的操作適用于該類型的對象。 另外,有錯誤傾向的符號已經(jīng)避免,并且語言語法避免了編碼形式的使用,使更傾向于英語的結(jié)構(gòu)。最后,Ada 語言提供了程序單元單獨編譯的功能,使程序開發(fā)和維護簡便,同樣也提供了在一個單元內(nèi)多個單元之間的檢測??紤]人類程序員的問題也在設(shè)計時被強調(diào)。總而言之,在繼續(xù)避免過多復(fù)雜句型的缺陷的同時,嘗試以一致系統(tǒng)的方式保持相對較少的底層概念。 參考文獻編輯本段回目錄 |
|