お使いのブラウザは最新版ではありません。最新のブラウザでご覧ください。

CNET Japan ブログ

半世紀かけて一冊の本の完遂に取り組むKnuth先生

2004/11/02 09:29
  • このエントリーをはてなブックマークに追加

プロフィール

umeda

シリコンバレーで経営コンサルティングを行なう傍ら、ベンチャーキャピタリストとしても活躍する梅田望夫さんが、IT業界の先を読むのに役立つ英文コンテンツを毎日紹介していきます。これを読めば、英語と業界動向を読む力が同時に身に付くはず(このブログの更新は2004年12月30日で終了しました)。
ブログ管理

最近のエントリー

結城浩さんの日記を読んでいたら、「Knuth先生の。」というタイトルの短いエントリーがあって、文章は「即買い。」の一言。そこから張られていたのは、なんとKnuthの「The Art of Computer Programming」第2巻の新訳ではありませんか。これは懐かしい。第1巻の新訳も今年初めに出版されたようで、それぞれが1冊1万290円。2冊で2万580円。けっこう高いし、僕はもうプログラミングともアルゴリズムとも縁のない暮らしをしているけれど、こういう凄い本は座右に置いてときどき眺めるだけでも価値があるので、思い切って2冊まとめて注文してしまいました。

プログラミングを勉強していた頃の本などはほぼすべて散逸してしまったが、緑色の表紙のぼろぼろになったKnuth著「Fundamental Algorithms」(The Art of Computer Programming Volume 1, 1979年刊)だけは、今も僕の手元にある。内容など全部忘れてしまったけれど、この本を手に取ると懐かしくなる。

この「The Art of Computer Programming」というシリーズのオリジナルは、1968年に書き始められた。36年前のことである。そして今も書き続けられている。Amazonの「出版社/著者からの内容紹介」によれば、

「なお、本書はThird Edition(1997年刊)に対する翻訳で、用語についても違和感のないよう配慮しています。また、2003年11月4日までの正誤情報を反映しています。」

とあるから、Knuthが最新研究も入れ込んだ内容になっているのでしょう。本が届くのが楽しみだ。

36年前から続く未完の全7冊

1968年にオリジナルが書かれたとき、本書は全7巻構成であることが、第1巻(Volume 1)の前書きで予告された。そして、分厚い本が3冊、1973年まで5年の間に続けざまに書かれた。その3冊(もちろん改稿が加えられ続けた最新版)は今、ボックスセットになって売られている。映画のDVDみたいだ!!!

ところがそこからぱたりと第4巻が出なくなって今日に至る。

真相はよく知らないが、よく言われているのは、

「Knuth先生は文書整形システムTeX、文字フォント設計システムMETAFONTの開発者で、「The Art of Computer Programming, Vol.3」初版(1973年)の印刷仕上がりが不満だったため、9年かけてTeXを開発したということはよく知られています。」(アマゾンの内容紹介より)

という逸話である。

Knuthが大学教授を引退した理由

KnuthはもともとStanford大学の教授だが、彼のホームページにいくと「Frequently Asked Questions(FAQ)」というページがある。けっこうユーモアに溢れている。第1の質問が「あなたは引退したのですか?」である。彼の回答の冒頭は次の通り。

「I retired early because I realized that I would need about 20 years of full-time work to complete The Art of Computer Programming (TAOCP), which I have always viewed as the most important project of my life.

Being a retired professor is a lot like being an ordinary professor, except that you don't have to write research proposals, administer grants, or sit in committee meetings. Also, you don't get paid. 」

1968年に書き始めた「The Art of Computer Programming」を完遂するのにフルタイムで書き続けて20年の歳月が必要だということがわかったので、早くにリタイアした(この文章が何年に書かれたものかはよくわからないが、ここ7-8年以内に書かれたものだと思う)。「The Art of Computer Programming」完遂こそが、自分の人生における最も意味のあるプロジェクトだからだと、彼は引退理由を説明する。

「My full-time writing schedule means that I have to be pretty much a hermit. The only way to gain enough efficiency to complete The Art of Computer Programming is to operate in batch mode, concentrating intensively and uninterruptedly on one subject at a time, rather than swapping a number of topics in and out of my head. I'm unable to schedule appointments with visitors, travel to conferences or accept speaking engagements, or undertake any new responsibilities of any kind. I'm glad that the WWW makes it possible for me to respond to questions that I don't have to see or hear.」

この本を書くためには隠遁者となり、ありとあらゆる世事を放棄して集中しなければならないのだ、と彼は書く。凄い。

第4巻は2007年、第5巻は2010年

そして、第2の質問が「第4巻はいつ出るんだ?」である。第3巻までが素晴らしい名著だっただけに、3巻までのオリジナルが出てから30年たっても出ない第4巻について、誰もが「第4巻はどうなった?」と訊ねたいのである。この質問に対する回答を是非読んでみてください。

まず第4巻の目次はすべて出来上がっているようで、

「If all goes as planned, Volumes 4A, 4B, and 4C will be ready in the year 2007. 」

すべて計画通りいけば、2007年には完成すると。そして、第5巻については、

「Estimated to be ready in 2010. 」

2010年に完成だ。そしてさらにその先の計画まで書いてある。

「As I write Volumes 4 and 5, I'll need to refer to topics that belong logically in Volumes 1--3 but weren't invented yet when I wrote those books.」

4巻と5巻が完成したら、1巻から3巻の中に入れるべき内容で、書いた当時はまだ発明されていなかったトピックについて書かなくちゃいけない。

「After Volume 5 has been completed, I will revise Volumes 1--3 again to bring them up to date.」

つまり、4巻、5巻が完成したあとは、1-3巻の改訂版に彼は向かうのだ。

そしてその次は、

「Then I will publish a ``reader's digest'' edition of Volumes 1--5, condensing the most important material into a single book.」

1巻から5巻までの中で最も重要な部分を選んで「リーダーズ・ダイジェスト」を刊行する。

そしてそのあとで、6巻、7巻を書くという。

「And after Volumes 1--5 are done, God willing, I plan to publish Volume 6 (the theory of context-free languages) and Volume 7 (Compiler techniques), but only if the things I want to say about those topics are still relevant and still haven't been said. Volumes 1--5 represent the central core of computer programming for sequential machines; the subjects of Volumes 6 and 7 are important but more specialized.」

年齢的な制約も含め、全7巻完遂できるかどうかは、神のみぞ知るだ。

しかし、真のライフワークとはこういうものか、と思い知らされる気がした。完遂されるとすれば、2015年から2020年頃になるのだろうか。その日を待ちたいと思う。完遂時には半世紀を越える営みとなる成果の凄みを体感してみたいのだが、完全主義者ゆえに未完で終わる予感も濃い。

ところでKnuthは引退したとはいえ、ときどき講演はしているようで、講演ビデオはこのページからたどっていくとネット上で再生することができる(僕はしばらく彼の講演に見入ってしまった)。Knuthのホームページの中で、今日取り上げなかった部分に、彼らしい面白さが満載である。興味のある方は是非どうぞ。

※このエントリは CNET Japan ブロガーにより投稿されたものです。朝日インタラクティブ および CNET Japan 編集部の見解・意向を示すものではありません。
運営事務局に問題を報告

最新ブログエントリー