エドガー・ダイクストラ
出典: フリー百科事典『ウィキペディア(Wikipedia)』
エドガー・ダイクストラ(Edsger Wybe Dijkstra, 1930年5月11日 - 2002年8月6日)は、オランダ人情報工学者。1972年、プログラミング言語の基礎研究に対してチューリング賞を受賞。構造化プログラミングの提唱者。1984年から2002年に亡くなるまでテキサス大学オースティン校の情報工学の Schlumberger Centennial Chair を務めた。
目次 |
[編集] 生涯
ダイクストラはライデン大学で理論物理学を学んだが、プログラミングの方に興味があることに気が付くのに時間はかからなかった。
最初にアムステルダムの国立数学研究所(Mathematisch Centrum)に職を得たが、オランダのアイントホーヘン工科大学で教授職を得る。1970年代初期にはバロースのフェローとしても働いた。その後、アメリカのテキサス大学オースティン校に移り、2000年に引退した。
彼の情報工学に関する貢献としては、グラフ理論の最短経路問題におけるダイクストラ法、THEオペレーティングシステム、セマフォの考案などがある。分散コンピューティング分野では「自己安定化; Self-stabilization」というシステムの信頼性を保証する手法を提案した。
『構造化プログラミング』("Structured Programming", 1967)についで、1968年 "A Case against the GO TO Statement" (EWD215)を発表してgoto文撲滅運動の端緒とし、while文などの構造化制御構文への転換を促した。『Go to文は有害だと考えられる』(Go To Statement Considered Harmful)という刺激的な題名はダイクストラ本人がつけたものではなく、Communications of the ACM の編集者が付けたものである。ダイクストラはALGOL 60のファンとしても知られ、最初のコンパイラを実装したチームにも参加していた。そのコンパイラ開発に関わった Jaap Zonneveld とダイクストラはプロジェクトが完了するまで髭を剃らないという誓いを立てた。後に Zonneveld は髭を剃ったが、ダイクストラは亡くなるまで髭を蓄えていた。
1970年代になると、ダイクストラの主要な興味は形式的検証に移っていった。当時の一般的手法は、とりあえずプログラムを書いてから問題ないことを検証するというものであった。ダイクストラはこれに対して、検証に時間がかかって面倒であるし、プログラムの開発手法に何ら洞察を与えない点が問題であるとした。一方「検証とプログラミングを同時に行う」のが「プログラム導出」と呼ばれる別の手法である。まず、プログラムの動作に関する数学的な「仕様」を記述し、その仕様に数学的な変換を加えて最終的にプログラムを導き出す。このように作成されたプログラムは「構造上正しい」ことが知られている。ダイクストラの後期の仕事は、この数学的手法を効率化することに関係している。2001年のインタビューで彼は「優雅さ」への渇望について述べていた。すなわち、完全さを求めるのではなく、思考を精神的に処理することが正しいアプローチであると。彼はたとえ話としてモーツァルトとベートーヴェンの作曲法を対比させている。
ダイクストラはプログラミングについての数々の論文でも知られている。彼は、プログラミングが本来非常に難しく複雑であり、プログラマはその複雑性をうまく管理するために可能な限り技巧と抽象化を利用する必要がある、という主張をした最初の人物でもある。彼はまた、万年筆で慎重に原稿を書く習慣があることでも知られている。ダイクストラは原稿に EWDという記号と番号を付与したため、彼の原稿は一般に EWD と呼ばれている。ダイクストラは新たに EWD を書き上げると、そのコピーを同僚に配布した。それがさらにコピーされて世界中に配布されていき、情報工学界全体に広がったのである(EWD1000参照)。主題は情報工学か数学であるが、一部は旅行記だったり、手紙だったり、講演記録だったりする。1300以上のEWDが電子化され、テキサス大学のダイクストラのアーカイブで検索・入手可能である[1]。
ダイクストラは自分のコンピュータを所有したことがなく、めったに使わなかった。
長年の癌との戦いの末、2002年8月6日、オランダの Nuenen で亡くなった。
[編集] 関連項目
[編集] 参考文献
[編集] ダイクストラの著作物
- ^ E.W. Dijkstra Archive(ダイクストラの業績集)
- Go To 文は有害だと考えられる (Go To Statement Considered Harmful), Communications of the ACM, Vol. 11 (1968年) 147–148; オンライン版 (EWD215)
- How do we tell truths that might hurt? (EWD498)
- From My Life (EWD166)
- A Discipline of Programming, Prentice-Hall Series in Automatic Computation, 1976年, ISBN 0-13-215871-X
- Selected Writings on Computing: A Personal Perspective, Texts and Monographs in Computer Science, Springer-Verlag, 1982年, ISBN 0-387-90652-5
- A Method of Programming, E.W. Dijkstra, W.H.J. Feijen, J. Sterringa, Addison Wesley 1988年, ISBN 0-201-17536-3
[編集] その他
- Edsger Wybe Dijkstra (1930–2002): A Portrait of a Genius (PDF) Formal Aspects of Computing の死亡記事(伝記的記述あり)
- How can we explain Edsger W. Dijkstra to those who didn't know him? by David Gries
- Dijkstra Eulogy by J Strother Moore
- In Memoriam Edsger Wybe Dijkstra by Mario Szegedy