䞀人のパスカルではないノヌベル賞受賞者のニクラりス・ワヌスは珟代䞖界のために䜕をしたか

画像



珟代䞖界はニクラりス・ワヌスをほずんど知らず、コンピュヌタヌ科孊の䞖界ぞの圌の莫倧な貢献に぀いおさえ掚枬しないず考える人もいたす。 誰かが圌を「パスカルの父」ず考えおいたす。 Wirthは、Turbo Pascalの孊生に教えるずきに倧孊の教垫だけでなく、Delphiで曞いおいる商甚開発者にも蚘憶されおいたす。



実際、Niklaus Wirthは倧文字の゚ンゞニアであり、プログラミング蚀語の開発ぞの貢献はPascalに限定されず、それだけで始たりたす。 さらに、Wirthは教垫であり、著名人であり、哲孊者でもありたす。 圌の性栌の本圓の芏暡ずIT業界ぞの貢献を評䟡しおみたしょう。



子䟛の頃、教育、趣味



ニクラりス・ワヌスは1934幎2月15日にチュヌリッヒ郊倖のノィンタヌトゥヌルずいう小さな町で生たれたした。 圌の䞡芪はりォルタヌずヘドりィグワヌスです。 ニクラりスの父芪は孊校の先生でした。 圌は父芪が教えた孊校の近くに䜏んでいた。 圌らの家には良い図曞通があり、ワヌスは鉄道、タヌビン、電信に関する倚くの興味深い本を芋぀けたした。



ノィンタヌトゥヌルには長い歎史があり、機械工孊で有名です。機関車ずディヌれル゚ンゞンがそこで生産されおいたす。 幌少期から、ワヌスはテクノロゞヌ、特に航空機のモデリングが奜きでした。 ロケットを発射するには、燃料を入手する必芁があったため、圌は化孊を取り䞊げたした。 ダングワヌスは、孊校の地䞋に「秘密の」研究宀を蚭眮したした。 䜕も圌を止めるこずはできたせんでした。䞀床圌が䜜ったモデルが䞎えられた軌道から逞脱し、校長の足の䞋に萜ちたした。 しかし、ワヌスは䟝然ずしお頑固に意図した目暙に向かっおいきたした。



趣味は非垞に深刻であるこずが刀明したため、ワヌスは圌自身の図面に埓っお12以䞊のモデルを構築したした。 ちなみに、圌は埌に本物のフラむトに埓事し、この趣味を生涯続けたした。 非垞に立掟な幎霢でさえ、人気のあるプログラミング蚀語の䜜成者は、ゞェット戊闘機を操瞊する喜びを吊定したせんでした。



画像



圌が18歳のずき、圌ず他の2人のチュヌリッヒ航空機モデラヌは、むギリスから切望された無線機噚を曞き䞊げたした。 これは圌の将来の運呜を事前に決定したした-1954幎にWirthはチュヌリッヒETHEidgenoessische Technische Hochschule-スむス連邊工科倧孊の電子孊郚に入りたした。 4幎間のトレヌニングの埌、Wirthは電気工孊の孊士号を取埗したした。 そしお、スむス-カナダ-アメリカ-スむスのルヌトに沿っお、未来の「パスカルの父」ず「コンパむラヌの王」の栄光の10幎間の海倖科孊「ツアヌ」を開始したす。



ワヌスは、ケベック州ラノァル倧孊カナダで勉匷を続け、1960幎に修士号を取埗したした。 その埌、カリフォルニア倧孊バヌクレヌ校米囜に招埅されたした。これは、シリコンバレヌの未来の真珠です。 そこで、1963幎にハスキヌ教授の指導のもず、ニクラりス・ノィルトは、LispEulerの手段を甚いおアルゎルの発展に関する論文を擁護したした。



人生ぞのチケット



この仕事は文字通り圌に人生のスタヌトを䞎えたした。Wirthはプログラミングの達人に気づかれ、IFLのアルゎル暙準化委員䌚に招埅されたした。



チャヌルズ・ホアずずもに、ワヌスは原語の欠陥がなく、最䜎限必芁な資金で補われた、アルゎルの適床に修正されたバヌゞョンの開発に関する委員䌚の方針を擁護したした。 WirthずHoarは委員䌚にAlgol-W蚀語W-Wirthからを提瀺したしたが、これはたさにAlgolの手盎しでしたが、支揎は埗られたせんでした。 1968幎に委員䌚の䜜業が完了したずき、Wirthは信頌性ず極端な冗長性の欠劂に぀いお、Algol-68を批刀した人々の䞭にいたした。



その孊校は無駄ではありたせんでした。Wirthは䞀生の間、特に圌らがあなたの話を聞きたくないずき、行為によっお圌の無実を蚌明する必芁があるこずを思い出したした。 蚀語の開発においお、圌は数孊工孊を支持しお抜象科孊的アプロヌチを氞遠に攟棄したした。 圌によるず、最初に蚀語を実装するこずをお勧めしたす。そしお、それに぀いおのみあなたはそれに぀いお曞くべきです。



志を同じくする人々



ロマンチックな1960幎代は、構造プログラミングの3人の家長-オランダの゚ドガヌダむクストラ、むギリス人のチャヌルズアン゜ニヌホアヌ、スむスのニクラりスワヌスの間の友情の始たりを瀺したした。



画像

巊から右ニクラりス・ワヌス、゚ドスゞャヌ・ダむクストラ、チャヌルズ・ホア



これらの「ノヌベル賞」受賞者ACM協䌚が授䞎したチュヌリング賞、䞀生に䞀床授䞎され、コンピュヌタヌサむ゚ンスでノヌベル賞ず同䞀芖されたは、コンピュヌタヌサむ゚ンスの抜象化ではなく、明確な専門職によっお結集されたした。



パスカル



Wirth教授の最も有名な業瞟は、Pascal1970です。 パスカルは、数䞖代のプログラマヌの䞖界芳の圢成に倧きな圹割を果たしたした。 その䞻な利点は、シンプルさず゚レガンスですEdsger Dijkstroyによっお定匏化された構造プログラミングの明確な原則、Anthony Hoarによっお築かれた矎しい数孊的基盀、およびNicklaus Wirthによっお実装されたAlgol-Wアむデアの芋事なアヌキテクチャの実斜䟋に基づいおいたす。



技術的な芳点から芋るず、Pascalが興味深いのは、ETHで䜜成されたコンパむラが、Cコンパむラの玄2幎先に独自の高レベル蚀語の最初の実装の1぀になったからです。 1973幎の䜜業の過皋で、特別なPコヌドを実行する抜象パスカルマシンPマシンが発明されたした。 Pascalコンパむラを異なるプラットフォヌムに転送する問題を解決するために、Wirthは、実瞟のある解釈方法を䜿甚するこずにしたした。



パスカルの蚀語は、䞻にコンピュヌタヌサむ゚ンスを教えるための蚀語ずしお倚くの人に認識されおいたした。 しかし、ワヌス自身は、圌の朜圚的な可胜性のそのような意図的な狭小化に同意しおいたせん1984「パスカルは孊習のための蚀語ずしお開発されたした。 この声明は真実ですが、トレヌニングでの䜿甚が唯䞀の目的ではありたせんでした。 実際、私は、実甚的な問題を解決するために䜿甚できないツヌルやテクニックのトレヌニング䞭にアプリケヌションが成功するこずを信じおいたせん。 今日の暙準では、Pascalには倧芏暡システムのプログラミングに明らかな欠陥がありたしたが、15幎前は、望たしいものず効果的なものの間の合理的な劥協でした。



5番目の芁玠



1978幎から1980幎にかけお、60幎代埌半にWirthが戻ったスむス連邊工科倧孊で、圌は768 x 592ピクセルのグラフィックディスプレむずマりスを備えた最初のコンピュヌタヌステヌションの1぀を開発したした。 圌のコンピュヌタヌには、やや奇劙な名前「リリス」を遞びたした。



ナダダの䌝統におけるリリスは、女性の圢をした悪魔です。 圌女は圌らの意志に反しお男性を占有したす。 ちなみに、ある䌝説の䌝説によるず、リリスずいう名前の映画映画「フィフス゚レメント」などは、むブが誕生するたでアダムの劻でした。 おそらくワヌスは、圌のコンピュヌタヌが男性にずっお非垞に魅力的であり、燃えるような愛情を匕き起こすこずを念頭に眮いおいたのでしょう。



Lilithコンピュヌタには、64 KBのRAMず7 MHzの呚波数のプロセッサがありたした。 1980幎、それは悪くありたせんでした。 元のオペレヌティングシステムであるWirthを含むこのマシンのすべおの゜フトりェアは、同僚の支揎を受けお、圌が盎前に開発した "Modula-2"の蚀語で蚘述したした。



Modula-2



か぀お、C蚀語の有名な普及者であり、叀兞的なCマニュアルKRの共著者であるBrian Kernighanは、「なぜPascalは私のお気に入りのプログラミング蚀語ではないのか」ずいう重芁な蚘事を曞きたした。 泚意深く読んだ堎合、ニクラりス・ワヌスはそれから正しい結論を䞋したず刀断でき、Modula-21980の蚀語で、蚘事の圱響䞋で、圌は芏範的なパスカルの倚くの欠陥を排陀したした。



ただし、1぀の重芁な状況に留意する必芁がありたす。 攪拌を匕き起こすカヌニガンの䜜品は、1981幎4月2日に曞かれたした。 WirtグルヌプがETHで最初のModula-2コンパむラを実装しおから2幎埌、Modula-2-Lilithパヌ゜ナルコンピュヌタのハヌドりェア実装のリリヌスから1幎埌。 1993幎4月、Wirthはプログラミング蚀語の歎史に関するACM䌚議で、同僚の1人からの質問に応えお、Modula-2蚀語に「6ポむント」スむスの孊校で最高のマヌクのマヌクを付けたした。



Modula-2蚀語は、Ada蚀語のコンパクトで効果的な代替物であるだけでなく、モゞュラヌプログラミングのアむデアの実装よりもはるかに先を行っおいたした。 IBM AS / 400甚の有名なOS / 400オペレヌティングシステムがModula-2に実装されたした。 デゞタルシステム研究センタヌDECシステム研究センタヌは、この蚀語を内郚プロゞェクトの実装の基瀎ずしお採甚し、その埌Modula-3蚀語を䜜成したした。



コンピュヌタヌ業界は、Wirthの仕事に少なくずも5〜7幎遅れおいたした。 同じ1979幎最初のModula-2コンパむラがRT-11環境のPDP-11コンピュヌタに登堎したずき、䌝説のApple IIコンピュヌタはLilithよりはるかに劣っおいたしたが、PascalのUCSD実装に焊点を圓おたApple Pascalコンパむラを買収したした。 最初の控えめなTurbo Pascalが登堎する前に、Anders Heilsbergが登堎しおから4幎が経ちたした。 Lilithコンピュヌタヌに関しおは、レヌザヌ印刷の機胜を完党に利甚したペヌロッパで最初のコンピュヌタヌでした。 その埌、WirthはLilithプロゞェクトで、スむス産業がそのナニヌクなチャンスを逃したずいう事実に぀いお悲しげに語りたした。



「ワヌススクヌル」



Aleksey Nedorya-物理孊および数理科孊の候補者1994 は、自身をNiklaus Wirthの支持者ず考えおいたす。

「ワヌススクヌル」は私たちに新しい芖野を䞎えおくれたした。 ワヌスのプレプリントを読んで、私たちは䞖界を開き、䞖界に開かれたした。 さらに重芁なこずは、Wirthからシンプルさず耇雑さを扱う技術に぀いお孊んだこずです。 簡単な䟋。 Modula-2蚀語の最初のコンパむラは2パスであり、蚀語はそれを必芁ずしたした。 だから、ドミトリヌ・クズネツォフレオがバロりズ6700でI.V.ポトシンの指瀺の䞋で䜜った最初のクロスコンパむラヌは2パスでした。 それからクロノスの物語がありたした。 最初のKronosが䜜業を開始したずきに、切り捚おられたModula-2でコンパむラを緊急に䜜成し、Kronos自䜓で開発を行えるようにしたした。


画像

Alexey Nedorya、Niklaus Wirth、Vladimir Filippov巊から右。 モスクワ、ポリテクニック博物通、2005

この蚀語ずModula-0コンパむラを呌び出したした。 コンパむラはシングルパスであったため、蚀語を倉曎する必芁がありたした。 そしお、Modula-2の完党なコンパむラを実行する時が来たした。蚀語の説明に埓っお、2パスにするようになりたした。 しかし、その埌、Wirthが蚀語を修正し手順の前方蚘述を远加、ワンパスコンパむラを䜜成できるずいうニュヌスが届きたした。



その結果、私たちは人生を簡玠化し、開発を加速したした。 䞻なものは、それたで「神聖な牛」だったプログラミング蚀語が、先ほどどこかから持ち蟌たれたものが、研ぎ盎され修正できる䜜業ツヌルになったこずでした。 創造性を可胜にし、簡玠化の重芁性ず有甚性を理解するずいう教蚓を孊びたした。




゚むダ



1970幎代埌半、Wirthは、米囜防総省の組み蟌みシステムプログラミング甚の新しい蚀語の開発競争に参加したした。その結果、 Ada蚀語が䜜成されたした。



省は、リアルタむムで動䜜する自動化された耇合䜓の制埡システム甚の統合プログラミング蚀語を開発するタスクを蚭定したした。 これらは䜕よりもたず、軍事斜蚭甚のオンボヌド制埡システムでした。 この蚀語は数孊者の゚むダ・ラブレヌスにちなんで名付けられたした。



Algol-68ずの話が繰り返されたした-WirthずHoarが働いたグルヌプのプロゞェクトは、蚀語委員䌚によっお承認されたせんでした。 チャヌルズ・ホアずニクラりス・ワヌスは、最初のステヌゞの埌、競争から脱萜したした。 Pascalに基づくプロゞェクトですが、はるかに耇雑で膚倧なプロゞェクトが競争に勝ちたした。



ホアヌルは、「ガラガラず装身具が信頌性ず安党性の基本的芁件に勝っおいるこず」に遺expressedの意を衚明し、「Adaコンパむラで時間内に怜出されなかった゚ラヌにより間違った方向に飛んでいるミサむルの艊隊」に譊告した。



ニクラりス・ワヌスはもっず控えめに語ったが、吊定的にも語った。 圌は次のように述べおいたす。 Adaの3分の1を勉匷したので、普通に働くこずができるずは思いたせん。 蚀語のすべおの詳现を習埗しなければ、将来それらに぀たずく可胜性があり、これは䞍快な結果に぀ながりたす。」



ワヌスに察する「尊敬ず賞賛」を衚明する゚むダ開発チヌムの責任者であるゞャン・むシュビアは、圌に同意せず、「ワヌスは耇雑な問題に察する単玔な解決策を信じおいる。 私はそのような奇跡を信じおいたせん。 耇雑な問題には耇雑な゜リュヌションが必芁です。」



オベロン



1988幎、JÃŒrgGutknechtず共同で、WirthはOberonプログラミング蚀語を開発したした。 開発の目的は、蚭蚈䞭の新しいワヌクステヌションのシステム゜フトりェアを実装するための蚀語を䜜成するこずでした。 Oberonの基盀はModula-2で、これは倧幅に簡玠化されたしたが、同時に新しい機䌚が远加されたした。





ナルク・グトクネヒト



ニクラりス・ワヌスず圌の同僚は、最初のバヌゞョンのOberonシステム、マシン、Oberon蚀語コンパむラ、およびSystem Oberonオペレヌティングシステムを開発したした。これは、グラフィカルナヌザヌむンタヌフェむス、むンタヌフェむスでテキストを䜿甚するための高床な抂念、そしお党䜓ずしお、Wirth抂念の適甚性の重芁な蚌拠を提䟛したした。



OberonのHabréで既に曞かれおいるように、モゞュヌルはアルゎリズムずデヌタ構造を構造化する手段であるだけでなく、コンパむル、ロヌド、および配垃の単䜍でもありたす。 ぀たり、モゞュヌルは、コンパむラヌがコンパむルできる最小の゚ンティティヌです。 他のモゞュヌルに察する1぀のモゞュヌルの䟝存関係は自動的に蚈算されたすが、あるモゞュヌルから別のモゞュヌルぞのコヌドの組み蟌みには぀ながりたせん。 コヌドのバヌゞョンを制埡するために、むンポヌトされた゚ンティティの識別子ず䟝存関係のハッシュコヌドのみが含たれたす。

モゞュヌルはロヌド単䜍です。぀たり、特別な堎合を陀き、モゞュヌルコヌドぱントリポむントがあり、無制限の時間実行できる完党なプログラムです。 ぀たり、完党なプログラムです。 OSカヌネルでさえ、メモリにロヌドされる最初のモゞュヌルにすぎたせん。 たた、モゞュヌルは、゜ヌスの圢だけでなく、バ​​むナリヌの圢でも、むンタヌフェヌス郚分の圢でも配垃されるこずを想定しおおり、その起動には特定のプラットフォヌムたたは耇数のプラットフォヌムのみが必芁です。 䞀般に、これらの抂念はOberonのモゞュヌル性の抂念に含たれおおり、モゞュヌル指向プログラミングを構成したす。


1992幎、WirthずMössenböckは、新しいプログラミング蚀語であるOberon-2Oberonの最小拡匵バヌゞョンに関するメッセヌゞをリリヌスしたした。 同じ幎に、ETHの子䌚瀟であるOberon microsystemsが蚭立され、Oberonシステムの開発が始たりたした。 ワヌスは圌女の取締圹䌚のメンバヌの䞀人になりたした。 1999幎、この䌚瀟は、コンポヌネントプログラミングにより適した次のバヌゞョンのOberon-Component Pascalをリリヌスしたした。



Oberonは、䞊列プログラミング蚀語Active Oberonの盎接の祖先ずしお機胜し、他のランタむムComponent Pascal、Zonnonに察するOberon蚀語のさたざたな倉曎は、Java蚀語のプロトタむプずしお機胜するいく぀かのプラットフォヌムJVM、CLR、JSに実装されたした。 Oberonシステム自䜓が、Microsoft Singularityプロゞェクトのプロトタむプずしお機胜したした。



画像 ご存じのずおり、仮想抜象Javaマシンの倖芳は、プログラミング蚀語の実践における基本的な発芋ずしお、Sun Labsの開発者によっお提瀺されたした。



Wirthの孊生の1人であるMichael Franzは次のようにコメントしおいたす。「Javaの移怍性は、倚数のアヌキテクチャを簡単にシミュレヌトできる仮想マシンに基づいおいたす。 仮想マシンのアむデアは20幎以䞊前に非垞に人気がありたしたが、埌に忘れられたした。 それはPascal-Pに぀いおでした-ETHで䜜成されたPascalの実装は、この蚀語の普及に決定的な圹割を果たしたした。 興味深いこずに、PascalずJavaの仮想マシンはアヌキテクチャが非垞に䌌おいたす。



2000幎代のしきい倀



「今、「最も珟代的で、最もオブゞェクト指向で、非垞にシンプルな」Java蚀語の特性に぀いお説明したす」 ず Sergei Sverdlov は曞きたした 。

Javaは単玔であるず考えられるだけでなく、最も耇雑な蚀語の1぀であり、C ++よりも耇雑であり、Oberonの2倍の耇雑さを備えおいたす。



しかし、おそらく同じオベロンずの比范は間違っおいたすか 結局のずころ、JavaはおそらくあなたのこのOberonよりもただ豊富な蚀語ですか 皮類はありたせん Javaには、Oberonにない2぀の重芁な芁玠がありたす。組み蟌みのマルチスレッドず䟋倖凊理です。 䞊列プログラミングツヌルを盎接蚀語に含めるこずの実珟可胜性は、倚くの専門家によっお疑問芖されおいたす。 これは、ラむブラリレベルで察凊できたす。 さらに、Javaで実装されおいるメカニズムは、最も成功した゜リュヌションではありたせん。


画像

蚀語構文の範囲の比范



蚀語構文の説明に含たれるトヌクンの総数は、この説明のサむズの䞀般的な特性ずしお圹立ちたす。



しかし、小さなOberonには、完党なレコヌドオブゞェクトず通垞の倚次元配列があり、それらぞのポむンタヌだけではありたせん。 Oberonには、最埌にれロのあるおなじみの文字列もありたす。これはオブゞェクトの文字列ではなく、単なる文字の配列です。぀たり、操䜜に特別なツヌルは必芁ありたせん。

Javaのプロパガンダずは反察に、本圓に新しいものはほずんどありたせん。 仮想マシンの同じ抂念は、マルチプラットフォヌムに぀いお考えるずきに最初に思い浮かぶものです。 箄25幎前、これは成功した新鮮な決定でした。


この意芋は15幎以䞊前に、そのような玛争が関連しおいたずきに衚明されたした。 この点でJavaが今どのように良くなっおいるのか、それずも悪いのかずいう問題は未解決のたたです。



教育的および瀟䌚的掻動



1963幎から1967幎たで、ワヌスはスタンフォヌド倧孊の助教授ずしお働き、1967幎にこのタむトルでチュヌリッヒ倧孊に戻りたした。 そしお、1968幎に圌はETHでコンピュヌタヌサむ゚ンスの教授の称号を受け取り、故郷で圌の「スむス」スタンフォヌドを建蚭し始めたした。



1969幎から1989幎たでの20呚幎は、おそらくワヌスの人生で最も実り倚い時期でした。 圌は孊校の建蚭を続け、倚くの時間を組織掻動に捧げたした。





゜ヌス oberon2005.oberoncore.ru



1982幎から1984幎そしお1988幎から1990幎、WirthはETHのコンピュヌタヌサむ゚ンス孊郚を率い、1990幎からETHのコンピュヌタヌシステム研究所を率いたした。



Wirth教授は1999幎4月1日に65歳になったずきに匕退したした。





゜ヌス oberon2005.oberoncore.ru



2001幎、ニクラりスワヌスはモスクワ州立倧孊でのオベロンコヌスの導入に関連しおロシアの孊生ず教垫に挚拶を曞きたした。「オベロンがロシアの高玚プログラマヌず科孊者のトレヌニングに圹立぀こず、そしおそれが垞にある囜で高く評䟡されるこずを心から願っおいたす」基瀎教育を重芖したした。」



人生の信条



ニクラりス・ワヌスの人生の信条は、ルスラン・ボガチレフが曞いおいるように、偉倧なブレヌズ・パスカルの蚀葉によっお最もよく䌝えられおいたす。 私たちが満たすこずのできない空間や時間ではなく、私たちを高めたすが、それは私たちの考えである圌女です。 よく考えるこずを孊びたしょう。」



PSそしお今、読者はNiklaus Wirthの䞻なプロゞェクトのリストに埓っお人の芏暡を評䟡するように招埅されおいたす





゜ヌス oberon2005.oberoncore.ru



All Articles