デビッド・ホイーラー

提供: miniwiki
移動先:案内検索

デビッド・ジョン・ホイーラーDavid John Wheeler1927年2月9日 - 2004年12月13日[1][2][3]は、コンピュータ科学者。バーミンガム生まれ。ケンブリッジ大学トリニティ・カレッジ数学を学び、1948年卒業。1951年、世界初のコンピュータ科学のPh.D.を取得した。

コンピュータ科学分野での彼の貢献には、EDSACブロックソート(Burrows-Wheeler変換)が、まず挙げられる。モーリス・ウィルクスと Stanley Gill と共に彼はサブルーチン[4]の発明者に数えられている。EDSACのサブルーチンコール技法(en:Electronic Delay Storage Automatic Calculator#Programming techniqueを参照)における、Aレジスタに戻り番地を置いてからサブルーチンの先頭に飛ぶジャンプは Wheeler Jump と呼ばれている[5]。また、CAPコンピュータEnglish版という Capability-based security に基づく世界初のコンピュータの実装責任者を務めた。暗号理論では、WAKEEnglish版の設計者であり、TEAEnglish版XTEAEnglish版暗号をロジャー・ニーダムEnglish版と共に設計した。

1957年8月、ホイーラーは Joyce Blacker と結婚した。彼女自身も1955年から EDSAC上で数学的研究を行っていた学生であった。1964年、ホイーラーはケンブリッジ大学ダーウィン・カレッジフェローとなり、1994年に公式には引退した。しかしその後も死の直前までケンブリッジ大学コンピュータ研究所の一員として活動し続けた。1994年、ACMフェロー、2003年、コンピュータ歴史博物館フェローに選ばれた。

ホイーラーの言葉として "All problems in computer science can be solved by another level of indirection."(コンピュータ科学のいかなる問題も他のレベルのインダイレクションによって解決できる)という言葉がしばしば引用される[6]en:Fundamental theorem of software engineering、“ソフトウェア工学の基本定理”)。別のホイーラーの言葉として "Compatibility means deliberately repeating other people's mistakes."(互換性は他の人々の間違いを意図的に繰り返すことを意味する)がある(ただし英語版の当記事で現在要出典タグが付いている)。

著作

  • Wilkes, Maurice; Wheeler, David; Gill, Stanley (1951), The Preparation of Programs for an Electronic Digital Computer, ISBN 0-262-23118-2 (プログラミングについての世界最初の書籍。ISBNは再刊時のもの)

脚注

  1. Campbell-Kelly, M. (2006). “David John Wheeler. 9 February 1927 -- 13 December 2004: Elected FRS 1981”. Biographical Memoirs of Fellows of the Royal Society 52: 437. doi:10.1098/rsbm.2006.0030. 
  2. Cambridge Computer Laboratory – Obituaries: David Wheeler, 1927–2004”. . 2011閲覧.
  3. “Professor David Wheeler - Obituaries, News - The Independent”. London. (2004年12月22日) 
  4. 注: 当時、彼らは closed subroutine と称していた。これは現代で言うインライン展開して使うコードを open subroutine と呼んでいたのに対して、サブルーチンコールで使用するものを closed と呼んだものである。当時のインライン展開は鑽孔テープ(紙テープ)のコピーによって行われた。
  5. 注: スタックや間接ジャンプが無いので、EDSACでサブルーチンからの戻りを実現するには、アキュムレータか特定のアドレスで戻り番地を渡し、ジャンプ命令を自己書き換えして戻る必要があった。
  6. Diomidis Spinellis. Another level of indirection. In Andy Oram and Greg Wilson, editors, Beautiful Code: Leading Programmers Explain How They Think, chapter 17, pages 279–291. O'Reilly and Associates, Sebastopol, CA, 2007.

外部リンク


テンプレート:Persondata