日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

歐洲的編程語言三巨頭,只剩下一位了!

來源: 責(zé)編: 時(shí)間:2024-01-08 17:10:59 250觀看
導(dǎo)讀能把三位大牛的名字都叫出來的人恐怕不多吧:這三位都是圖靈獎(jiǎng)獲得者,他們的名字和發(fā)明散布在各種教科書中,從左到右,依次是:尼克勞斯·沃斯 (Niklaus Wirth)瑞士人,一生發(fā)明了8種編程語言,其中最著名的是Pascal,提出了著名的

能把三位大牛的名字都叫出來的人恐怕不多吧:EFs28資訊網(wǎng)——每日最新資訊28at.com

EFs28資訊網(wǎng)——每日最新資訊28at.com

這三位都是圖靈獎(jiǎng)獲得者,他們的名字和發(fā)明散布在各種教科書中,從左到右,依次是:EFs28資訊網(wǎng)——每日最新資訊28at.com

尼克勞斯·沃斯 (Niklaus Wirth)

瑞士人,一生發(fā)明了8種編程語言,其中最著名的是Pascal,提出了著名的“程序=數(shù)據(jù)結(jié)構(gòu)+算法”,1984年沃斯因開發(fā)了一系列創(chuàng)新的計(jì)算機(jī)語言而獲得圖靈獎(jiǎng)。EFs28資訊網(wǎng)——每日最新資訊28at.com

迪杰斯特拉(Edsger Dijkstra)

荷蘭人,發(fā)明了“最短路徑算法”,“信號量”,提出了“Goto是有害的”,1972年因?qū)Y(jié)構(gòu)化編程的貢獻(xiàn)獲得圖靈獎(jiǎng)。EFs28資訊網(wǎng)——每日最新資訊28at.com

霍爾(Tony Hoare)

英國人,發(fā)明了“快速排序算法”,發(fā)明了霍爾邏輯來驗(yàn)證程序正確性,提出CSP解決并發(fā)過程的交互,發(fā)明了null這個(gè)引發(fā)“數(shù)十億美元”損失的錯(cuò)誤,1980年因?yàn)閷幊陶Z言的定義和設(shè)計(jì)的基本貢獻(xiàn)獲得圖靈獎(jiǎng)。EFs28資訊網(wǎng)——每日最新資訊28at.com

他們?nèi)硕荚跉W洲,都是從學(xué)工程學(xué)開始,后來轉(zhuǎn)到了計(jì)算機(jī)領(lǐng)域。EFs28資訊網(wǎng)——每日最新資訊28at.com

他們年齡相仿(沃斯和霍爾同歲,比迪杰斯特拉小4歲),共同的興趣讓他們走到一起,不但在暑期活動(dòng),學(xué)術(shù)會(huì)議上經(jīng)常碰面,密切合作,在私下里,也建立了深厚的友誼,經(jīng)常來回走動(dòng),互相拜訪。EFs28資訊網(wǎng)——每日最新資訊28at.com

今天講幾個(gè)小故事來聊聊他們的偉大貢獻(xiàn)。EFs28資訊網(wǎng)——每日最新資訊28at.com

迪杰斯特拉率先登場

在上世紀(jì)六七十年代,是編程語言發(fā)展的黃金時(shí)代。EFs28資訊網(wǎng)——每日最新資訊28at.com

第一個(gè)高級編程語言Fortran已經(jīng)出現(xiàn),但是主要應(yīng)用在工程界,和硬件密切相關(guān)。EFs28資訊網(wǎng)——每日最新資訊28at.com

1960年1月,F(xiàn)ortran之父約翰·巴克斯,Lisp之父約翰·麥卡錫,第一位圖靈獎(jiǎng)獲得者Alan Jay Perlis等一大批頂尖科學(xué)家在巴黎聚會(huì),經(jīng)過一番唇槍舌戰(zhàn)的討論,他們推出了ALGOL 60,這是一種和計(jì)算機(jī)硬件無關(guān)的編程語言,方便算法的描述。EFs28資訊網(wǎng)——每日最新資訊28at.com

ALGOL 60有很多創(chuàng)新,遞歸、本地變量、begin end 代碼塊都是由它率先推出。EFs28資訊網(wǎng)——每日最新資訊28at.com

現(xiàn)代大多數(shù)編程語言的語法,都是類ALGOL的。EFs28資訊網(wǎng)——每日最新資訊28at.com

從下圖中,就可以看到ALGOL的江湖地位,是很多編程語言的老祖宗。EFs28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片EFs28資訊網(wǎng)——每日最新資訊28at.com

迪杰斯特拉對Algol-60非常欣賞,他不止一次說道,這是計(jì)算機(jī)科學(xué)成為一個(gè)學(xué)科的重要時(shí)刻。EFs28資訊網(wǎng)——每日最新資訊28at.com

僅僅7個(gè)月以后,迪杰斯特拉就在荷蘭實(shí)現(xiàn)了第一個(gè)ALGOL60的編譯器,比其他小組早了一年多。EFs28資訊網(wǎng)——每日最新資訊28at.com

為了實(shí)現(xiàn)ALGOL60中的遞歸,迪杰斯特拉第一次引入了Stack這個(gè)概念。EFs28資訊網(wǎng)——每日最新資訊28at.com

迪杰斯特拉等人還舉辦了一個(gè)ALGOL 60的培訓(xùn)班,來培訓(xùn)的就有霍爾,霍爾剛剛發(fā)表了快速排序算法,他上完培訓(xùn)班,也在自己公司機(jī)器上實(shí)現(xiàn)了ALGOL 60,霍爾的實(shí)現(xiàn)效率高,可靠性強(qiáng),受到國際學(xué)術(shù)界的關(guān)注,進(jìn)入了IFIP工作組,開始維護(hù)和發(fā)展ALGOL。EFs28資訊網(wǎng)——每日最新資訊28at.com

PASCAL的誕生

1966年,霍爾和沃斯一起做了一個(gè)提案,希望對ALGOL做出一次改進(jìn)。但是ALGOL小組認(rèn)為他們的提案太保守,改動(dòng)太小,拒絕了。EFs28資訊網(wǎng)——每日最新資訊28at.com

“一氣之下”,沃斯和霍爾退出了ALGOL小組,自己把提案的想了做了實(shí)現(xiàn),即編程語言ALGOL W。EFs28資訊網(wǎng)——每日最新資訊28at.com

正是在ALGOL W 中,霍爾發(fā)明了那個(gè)被“無數(shù)人詬病”的空引用null。EFs28資訊網(wǎng)——每日最新資訊28at.com

在2009年的一個(gè)軟件會(huì)議上,霍爾為發(fā)明null夸張地道歉:EFs28資訊網(wǎng)——每日最新資訊28at.com

“我當(dāng)時(shí)正在設(shè)計(jì)ALGOL W 的類型系統(tǒng),我忍不住想把null放進(jìn)去,因?yàn)樗苋菀讓?shí)現(xiàn)......沒想到它導(dǎo)致了無數(shù)的錯(cuò)誤,系統(tǒng)崩潰......在過去的40年,引發(fā)了數(shù)十億美元的損失。”EFs28資訊網(wǎng)——每日最新資訊28at.com

1970年,沃斯進(jìn)一步改進(jìn)了 ALGOL W,成為了大名鼎鼎的PascalEFs28資訊網(wǎng)——每日最新資訊28at.com

為了幫助在各種計(jì)算機(jī)上實(shí)現(xiàn)Pascal, 他創(chuàng)建了一種新型的編譯器,該編譯器不會(huì)直接生成機(jī)器碼,而是生成一種中間的代碼形式,在虛擬機(jī)上運(yùn)行。EFs28資訊網(wǎng)——每日最新資訊28at.com

1976年,沃斯寫了一本書介紹基本的數(shù)據(jù)結(jié)構(gòu)和算法,也捎帶著介紹了Pascal語法。 EFs28資訊網(wǎng)——每日最新資訊28at.com

這本書的名稱也很神奇,叫做《程序=算法+數(shù)據(jù)結(jié)構(gòu)》,從此這個(gè)公式開始名揚(yáng)世界。EFs28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片EFs28資訊網(wǎng)——每日最新資訊28at.com

PASCAL的流行

雖然 Pascal 很快就得到了大學(xué)的認(rèn)可,但它又花了幾年時(shí)間才成為主流。EFs28資訊網(wǎng)——每日最新資訊28at.com

這得益于Philippe Kahn,是沃斯在瑞士蘇黎世聯(lián)邦理工學(xué)院教學(xué)期間的一個(gè)學(xué)生。EFs28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片EFs28資訊網(wǎng)——每日最新資訊28at.com

Philippe Kahn看到了沃斯教授在Pascal上的開創(chuàng)性工作,1982年成了一家叫做Borland的公司,從事軟件開發(fā)工具的開發(fā)。EFs28資訊網(wǎng)——每日最新資訊28at.com

1983年,Borland推出了革命性的集成開發(fā)環(huán)境,Turbo Pascal ,僅賣49.95美元。EFs28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片EFs28資訊網(wǎng)——每日最新資訊28at.com

 Turbo Pascal 除了價(jià)格低廉以外,另外一個(gè)殺手锏就是編譯速度飛快。EFs28資訊網(wǎng)——每日最新資訊28at.com

操刀編譯器的是丹麥人Anders Hejlsberg,他很大程度上受到了《程序=算法+數(shù)據(jù)結(jié)構(gòu)》這本書中Tiny Pascal”編譯器的啟發(fā)。EFs28資訊網(wǎng)——每日最新資訊28at.com

關(guān)于Anders Hejlsberg的故事,可以看這篇漫畫《一個(gè)養(yǎng)活了四代程序員的男人》。EFs28資訊網(wǎng)——每日最新資訊28at.com

Goto是有害的

1968年,迪杰斯特拉向ACM提交了一篇論文,尖銳地批評了當(dāng)時(shí)編程中過度使用Goto語句的情況,以及對結(jié)構(gòu)化編程的擁護(hù),他提議,在高級語言中廢除Goto語句!EFs28資訊網(wǎng)——每日最新資訊28at.com

論文的標(biāo)題平淡無奇:A Case Against the Goto Statement。EFs28資訊網(wǎng)——每日最新資訊28at.com

沃斯正好是當(dāng)時(shí)的編輯,他順手把標(biāo)題改成了Goto語句是有害的(Goto Statement Considered Harmful)。EFs28資訊網(wǎng)——每日最新資訊28at.com

如果放在如今的自媒體時(shí)代,沃斯絕對是一個(gè)擅長抓熱點(diǎn)的標(biāo)題大師。EFs28資訊網(wǎng)——每日最新資訊28at.com

這個(gè)標(biāo)題就像一個(gè)重磅炸彈,很多大牛跳出來,或支持或反對。EFs28資訊網(wǎng)——每日最新資訊28at.com

高德納寫了一篇叫做《使用 Goto語句進(jìn)行結(jié)構(gòu)化編程》的文章,分析了一些常見的編程場景,指出一些場景中Goto是最適合的語言結(jié)構(gòu)。EFs28資訊網(wǎng)——每日最新資訊28at.com

K&R在《C語言編程》中,也指出Goto可以用于函數(shù)結(jié)束錯(cuò)誤處理程序和循環(huán)的多級中斷。EFs28資訊網(wǎng)——每日最新資訊28at.com

即使在多年以后,Linus之父Linus Torvalds和《代碼大全》的作者Steve McConnell還反對迪杰斯特拉的觀點(diǎn),指出 Goto可以是一種有用的語言功能,可以提高程序速度、大小和代碼清晰度。EFs28資訊網(wǎng)——每日最新資訊28at.com

據(jù)統(tǒng)計(jì),2013 年,Linux 內(nèi)核代碼中約有 100,000 個(gè) goto。EFs28資訊網(wǎng)——每日最新資訊28at.com

“XXX是有害的”成為了計(jì)算機(jī)的時(shí)尚用詞,在隨后的幾十年中不斷出現(xiàn):EFs28資訊網(wǎng)——每日最新資訊28at.com

“全局變量是有害的”EFs28資訊網(wǎng)——每日最新資訊28at.com

“Unix風(fēng)格,或者cat -v 是有害的”EFs28資訊網(wǎng)——每日最新資訊28at.com

“MD5被認(rèn)為是有害的”EFs28資訊網(wǎng)——每日最新資訊28at.com

“以人為本的設(shè)計(jì)是有害的”EFs28資訊網(wǎng)——每日最新資訊28at.com

“Java的新特性是有害的”EFs28資訊網(wǎng)——每日最新資訊28at.com

“‘被認(rèn)為有害’的文章是有害的”EFs28資訊網(wǎng)——每日最新資訊28at.com

......EFs28資訊網(wǎng)——每日最新資訊28at.com

尾聲

沃斯,迪杰斯特拉和霍爾都在歐洲,獲得圖靈獎(jiǎng)都和編程語言有關(guān),可以稱為歐洲編程語言的三巨頭。EFs28資訊網(wǎng)——每日最新資訊28at.com

他們都是結(jié)構(gòu)化編程的先驅(qū),他們的工作深刻地影響了我們現(xiàn)在的編程。EFs28資訊網(wǎng)——每日最新資訊28at.com

2002年8月6日,迪杰斯特拉和癌癥斗爭多年以后,不幸離世,享年72歲。EFs28資訊網(wǎng)——每日最新資訊28at.com

2024年1月1日,沃斯去世。享年89歲。EFs28資訊網(wǎng)——每日最新資訊28at.com

三巨頭中,只剩下霍爾一位了。EFs28資訊網(wǎng)——每日最新資訊28at.com

其實(shí),除了這三位之外,歐洲還有一對編程語言雙子星,挪威的Ole-Johan Dahl和Kristen Nygaard ,他們發(fā)明了面向?qū)ο蟮恼Z言Simula,兩人也都于2002年去世。EFs28資訊網(wǎng)——每日最新資訊28at.com

我們現(xiàn)在使用的編程語言的概念和特性,差不多都在上世紀(jì)六七十年代就已發(fā)明,那一批編程語言的先驅(qū),都在逐漸老去。EFs28資訊網(wǎng)——每日最新資訊28at.com

編程語言的黃金時(shí)代,過去了。EFs28資訊網(wǎng)——每日最新資訊28at.com

EFs28資訊網(wǎng)——每日最新資訊28at.com

如需轉(zhuǎn)載,請通過作者微信公眾號coderising獲取授權(quán)。EFs28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-58922-0.html歐洲的編程語言三巨頭,只剩下一位了!

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 原生Details支持手風(fēng)琴模式了!

下一篇: Apollo,真香!

標(biāo)簽:
  • 熱門焦點(diǎn)
  • 5月iOS設(shè)備性能榜:M1 M2依舊是榜單前五

    和上個(gè)月一樣,沒有新品發(fā)布的iOS設(shè)備性能榜的上榜設(shè)備并沒有什么更替,僅僅只有跑分變化而產(chǎn)生的排名變動(dòng),剛剛開始的蘋果WWDC2023,推出的產(chǎn)品也依舊是新款Mac Pro、新款Mac Stu
  • iPhone賣不動(dòng)了!蘋果股價(jià)創(chuàng)年內(nèi)最大日跌幅:市值一夜蒸發(fā)萬億元

    8月5日消息,今天凌晨美股三大指數(shù)高開低走集體收跌,道指跌0.41%;納指跌0.36%;標(biāo)普500指數(shù)跌0.52%。熱門科技股也都變化極大,其中蘋果報(bào)181.99美元,跌4.8%,創(chuàng)
  • 在線圖片編輯器,支持PSD解析、AI摳圖等

    自從我上次分享一個(gè)人開發(fā)仿造稿定設(shè)計(jì)的圖片編輯器到現(xiàn)在,不知不覺已過去一年時(shí)間了,期間我經(jīng)歷了裁員失業(yè)、面試找工作碰壁,寒冬下一直沒有很好地履行計(jì)劃.....這些就放在日
  • 19個(gè) JavaScript 單行代碼技巧,讓你看起來像個(gè)專業(yè)人士

    今天這篇文章跟大家分享18個(gè)JS單行代碼,你只需花幾分鐘時(shí)間,即可幫助您了解一些您可能不知道的 JS 知識(shí),如果您已經(jīng)知道了,就當(dāng)作復(fù)習(xí)一下,古人云,溫故而知新嘛?,F(xiàn)在,我們就開始今
  • 從零到英雄:高并發(fā)與性能優(yōu)化的神奇之旅

    作者 | 波哥審校 | 重樓作為公司的架構(gòu)師或者程序員,你是否曾經(jīng)為公司的系統(tǒng)在面對高并發(fā)和性能瓶頸時(shí)感到手足無措或者焦頭爛額呢?筆者在出道那會(huì)為此是吃盡了苦頭的,不過也得
  • 一文搞定Java NIO,以及各種奇葩流

    大家好,我是哪吒。很多朋友問我,如何才能學(xué)好IO流,對各種流的概念,云里霧里的,不求甚解。用到的時(shí)候,現(xiàn)百度,功能雖然實(shí)現(xiàn)了,但是為什么用這個(gè)?不知道。更別說效率問題了~下次再遇到,
  • 2299元起!iQOO Pad明晚首銷:性能最強(qiáng)天璣平板

    5月23日,iQOO如期舉行了新品發(fā)布會(huì),除了首發(fā)安卓最強(qiáng)旗艦處理器的iQOO Neo8系列新機(jī)外,還在發(fā)布會(huì)上推出了旗下首款平板電腦——iQOO Pad,其最大的賣點(diǎn)
  • 微軟發(fā)布Windows 11新版 引入全新任務(wù)欄狀態(tài)

    近日,微軟發(fā)布了Windows 11新版,而Build 22563更新主要引入了幾周前曝光的平板模式任務(wù)欄等,系統(tǒng)更流暢了。更新中,Windows 11加入了專門針對平板優(yōu)化的任務(wù)欄
  • 利用職權(quán)私自解除被封帳號 Meta開除20多名員工

    11月18日消息,據(jù)外媒援引知情人士表示,過去一年時(shí)間內(nèi),F(xiàn)acebook母公司Meta解雇或處罰了20多名員工以及合同工,指控這些人通過內(nèi)部系統(tǒng)以不當(dāng)方式重置用戶帳號,其
Top 主站蜘蛛池模板: 通山县| 花莲县| 苍山县| 大庆市| 沁阳市| 东至县| 喀什市| 广西| 周口市| 青岛市| 遂宁市| 任丘市| 潜江市| 资中县| 稷山县| 高淳县| 临夏县| 武乡县| 建阳市| 桃源县| 辉县市| 开封县| 桂东县| 扬州市| 铁力市| 漾濞| 弥渡县| 宁南县| 武宁县| 嘉善县| 巴青县| 莒南县| 沧源| 兴义市| 洞头县| 郓城县| 汉阴县| 来安县| 资兴市| 湾仔区| 青岛市|