コンピュータプログラミングの技法、第 1 巻: 基本的なアルゴリズム | |
| 著者 | ドナルド・クヌース |
|---|---|
| 言語 | 英語 |
| ジャンル | ノンフィクション モノグラフ |
| 出版社 | アディソン・ウェズリー |
発行日 | 1968年~(本はまだ未完成) |
| 出版地 | アメリカ合衆国 |
| メディアタイプ | 印刷版(ハードカバー) |
| 番号 | 0-201-03801-3 |
| 519 | |
| LCクラス | QA76.75 |
『The Art of Computer Programming』( TAOCP)は、コンピュータ科学者のドナルド・クヌースが執筆した、プログラミングアルゴリズムとその分析を紹介する総合的なモノグラフです。第 1 巻から第 5 巻は、シーケンシャルマシンのコンピュータプログラミングの中核を表現することを目的としています。
クヌースが1962年にプロジェクトを開始したとき、彼は当初これを12章からなる1冊の本として構想していた。当時7巻セットになると予想されていたものの最初の3巻は、1968年、1969年、1973年に出版された。第4巻の作業は1973年に本格的に開始されたが、第2巻の第2版の印刷設定作業のため1977年に中断された。第4A巻の最終版の執筆は2001年に手書きで開始され、最初のオンラインプレファシクルである2Aは2001年後半に登場した。[1]第4巻の最初の出版分は、 2005年にファシクル2としてペーパーバックで登場した。第4巻のファシクル0~4をまとめたハードカバーの第4A巻は、2011年に出版された。第4巻のファシクル6(「Satisfiability」)は2015年12月にリリースされた。第 4 巻、第 5 巻 (「数学的予備知識の再考、バックトラッキング、ダンシング リンク」) は、2019 年 11 月にリリースされました。
第4B巻は、第5巻と第6巻から発展した資料で構成されています。[2]原稿は2022年8月1日に出版社に送られ、2022年9月に出版されました。[3] 第4C巻に予定されていた第7巻は、2022年8月3日のクヌースの講演のテーマでした。[4]
歴史

ウェスティングハウス・タレント・サーチ奨学金を獲得した後、クヌースはケース工科大学(現在のケース・ウェスタン・リザーブ大学)に入学した。そこでの彼の成績は非常に優れていたため、教授陣は彼が学士号を取得した時点で彼に理学修士号を授与することを投票で決定した。夏休みの間、クヌースはコンパイラを書くためにバローズ社に雇われ、夏季の数ヶ月間で教授が一年間で得る収入よりも多くの収入を得た。[5]このような功績により、クヌースはリチャード・S・ヴァルガを含む数学科の間で話題となった。
1962年1月、カリフォルニア工科大学の数学科の大学院生だったクヌースは、アディソン・ウェズリー社からコンパイラ設計に関する本を書くよう依頼され、より広い範囲の執筆を提案した。彼はその日のうちに12の章のタイトルのリストを思いついた。1962年の夏、彼はバロウズとのALGOL開発の後にFORTRANコンパイラを開発するために「悪魔に魂を売った」と考え、UNIVAC用のFORTRANコンパイラに取り組んだ 。彼は1960年から1968年まで第1巻「Fundamental Algorithms」を執筆しながら、バロウズのコンサルタントとして留まった。
この間、彼は線形プローブの数学的分析も開発し、定量的アプローチで資料を提示することを決意した。1963年6月に博士号を取得した後、彼は論文の執筆を開始し、1965年6月に最初の草稿を完成させた。3000ページの手書き原稿。[7]彼は、手書き原稿5ページ程度が1ページ印刷されると考えていたが、出版社は1ページ程度だと説明。+1 ⁄ 2ページの手書き文書を1ページの印刷文書に翻訳した。つまり、彼が持っていた文書はおよそ印刷された資料は2000ページあり、これは最初に出版された 3 巻のサイズとほぼ同じです。
『The Art of Computer Programming』の第 1 巻『Fundamental Algorithms』は、カリフォルニア工科大学とバローズ大学で働きながら、1963 年から 1968 年までの 5 年をかけて完成しました。
第 1 巻の Knuth の献辞には次のように書かれています。
このシリーズの本は、かつてケース工科大学に設置されていたタイプ650コンピュータ
に、数々の楽しい夜を偲んで愛情を込めて捧げられたものです。[a]
序文で彼は、まず妻のジルに感謝し、次にプログラムのほとんどのテストにB220とB5500コンピュータを使用させてくれたバロウズ、そしてカリフォルニア工科大学、国立科学財団、海軍研究局に感謝の意を表している。[8] : xii
『基礎アルゴリズム』のセクション 2.5 は、動的記憶域割り当てに関するものです。このセクションの一部は、バロウズのメモリ管理アプローチで使用されています。クヌースは、「セクション 2.5 で紹介されている「境界タグ」方式は、1962 年に著者が B5000 コンピュータの制御プログラムで使用するために設計したものです。」と主張しています。[8] : 460
クヌースは、出版社の科学顧問であったリチャード・S・ヴァルガから支援を受けた。ヴァルガは、カリフォルニア工科大学のオルガ・タウスキー=トッドとジョン・トッドを訪問していた。ヴァルガの熱心な支持を得て、出版社はクヌースの拡張計画を受け入れた。拡張版では、この本は7巻に分かれて出版され、各巻には1つか2つの章しか含まれなかった。[9]第4A巻のviページによると、1965年の原稿では100ページにも満たなかった第7章の増加により、第4巻の計画はその後、第4A巻、第4B巻、第4C巻、第4D巻、そしておそらくそれ以上にまで拡大した。
1976 年、クヌースは第 2 巻の第 2 版を準備し、再度の植字が必要になりましたが、第 1 版で使用された書体 (ホット タイプと呼ばれる) は入手できなくなっていました。1977 年、彼はより適切な書体を作成するために時間を費やすことを決意しました。8 年後、彼は現在すべての巻で使用されているT E Xで戻ってきました。
この巻のもう一つの特徴は、演習の難易度にばらつきがあることです。これには 0 から 50 までの数値評価が含まれます。0 はごく簡単な難易度で、50 は現代の研究で未解決の問題です。
間違いを見つけたら報奨金を
発見された誤りに対して「1 16 進法ドル」(100 16 進法の 16セントは10 進法では 2.56 ドル) 相当のいわゆるKnuth 報奨金小切手が提供され、その後の印刷でこれらの誤りが修正されたことで、最初の出版から長い年月が経った今でも、この作品は高度に洗練され、依然として権威あるものとなっています。
本の中のアセンブリ言語
本書のすべての例では、「MIXアセンブリ言語」(MIXAL) と呼ばれる架空の言語が使用されており、「MIX と呼ばれる架空のコンピュータ」上で実行されます。現在、[いつ? ] MIX コンピュータはRISCバージョンのMMIXコンピュータに置き換えられています。MIX から MMIX への変換は、Knuth がボランティアに協力を求めた大規模な進行中のプロジェクトでした。GNU MDK [10]などのソフトウェアは、MIX アーキテクチャのエミュレーションを提供するために存在します。Knuth は、アルゴリズムの速度とメモリ使用量を判断するために アセンブリ言語の使用が必要であると考えています。
MIX は当時存在していたどのコンピュータとも似ていましたが、より優れていました。「MIX」という名前はローマ数字で 1009 であり、これは当時のいくつかのコンピュータのシリーズ番号を含む式で与えられています: (360 + 650 + 709 + U3 + SS80 + 1107 + 1604 + G2- + B220 + S2000 + 920 + 601 + H800 + PDP-4 + 11)/16 = 1009 または MIX。MMIX という名前はローマ数字で 2009 であり、Knuth は MMIX は MIX よりもさらに優れていると主張しています。
批判的な反応
クヌースは1974年に「アルゴリズムの分析への大きな貢献[…]、特にこのタイトルの連続シリーズの有名な本を通じて「コンピュータプログラミングの芸術」への貢献」に対してチューリング賞を受賞した。 [11] American Scientist は、 20世紀を指して、この作品を「科学の世紀を形作った100冊ほどの本」に含めた。[12]第1巻の第3版の表紙には、ビル・ゲイツの「自分が本当に優れたプログラマーだと思うなら…(クヌースの)コンピュータプログラミングの芸術を読んでください…全部読めるなら、ぜひ私に履歴書を送ってください」という発言が引用されている。[13] New York Times は、これを「職業を定義する論文」と呼んだ。[14]
ボリューム
完了
- 第1巻 – 基礎アルゴリズム
- 第1章 基本概念
- 第2章 情報構造
- 第2巻 – 半数値アルゴリズム
- 第3巻 –ソートと検索
- 第4A巻 –組み合わせアルゴリズム
- 第 7 章 – 組み合わせ検索 (パート 1)
- 第4B巻 –組み合わせアルゴリズム
- 第 7 章 – 組み合わせ検索 (パート 2)
計画中
- 第 4C 巻、第 4D 巻、... 組み合わせアルゴリズム (第 7 章と第 8 章は複数のサブボリュームに分かれてリリース)
- 第7章 組み合わせ探索(続き)
- 第8章再帰
- 第5巻 – 構文アルゴリズム
- 第6巻 –文脈自由言語の理論
- 第11章 数理言語学
- 第7巻 –コンパイラテクニック
- 第12章 プログラミング言語の翻訳
章の概要
完了
第1巻 – 基礎アルゴリズム
- 第1章 基本概念
- 1.1.アルゴリズム
- 1.2. 数学的な準備
- 1.3 MMIX (ハードカバー版では
MIXですが、巻1で更新されました)
- 1.3.1. MMIXの説明
- 1.3.2. MMIXアセンブリ言語
- 1.3.3.順列への応用
- 1.4. 基本的なプログラミングテクニック
- 第2章 情報構造
- 2.1. はじめに
- 2.2.線形リスト
- 2.3.木
- 2.3.1.二分木の走査
- 2.3.2. 木の二分木表現
- 2.3.3. 木のその他の表現
- 2.3.4. 木の基本的な数学的性質
- 2.3.5. リストとガベージコレクション
- 2.4. 多重リンク構造
- 2.5.動的ストレージ割り当て
- 2.6. 歴史と参考文献
第2巻 – 半数値アルゴリズム
- 第3章乱数
- 第4章 算数
- 4.1.位置数体系
- 4.2.浮動小数点演算
- 4.2.1. 単精度計算
- 4.2.2. 浮動小数点演算の精度
- 4.2.3. 倍精度計算
- 4.2.4. 浮動小数点数の分布
- 4.3.多倍長演算
- 4.3.1. 古典的なアルゴリズム
- 4.3.2. モジュラー演算
- 4.3.3. どれくらい速く掛け算できるのか?
- 4.4.基数変換
- 4.5.有理数演算
- 4.5.1. 分数
- 4.5.2. 最大公約数
- 4.5.3.ユークリッドのアルゴリズムの分析
- 4.5.4. 素因数分解
- 4.6.多項式演算
- 4.6.1. 多項式の除算
- 4.6.2. 多項式の因数分解
- 4.6.3. 累乗の評価(加算連鎖累乗)
- 4.6.4. 多項式の評価
- 4.7.べき級数の操作
第3巻 – ソートと検索
- 第5章 –ソート
- 5.1.順列の組み合わせ特性
- 5.1.1. 反転
- 5.1.2. 多重集合の順列
- 5.1.3. 実行
- 5.1.4. タブローと反転
- 5.2.内部ソート
- 5.2.1. 挿入によるソート
- 5.2.2. 交換によるソート
- 5.2.3. 選択によるソート
- 5.2.4. マージによるソート
- 5.2.5. 分布によるソート
- 5.3. 最適なソート
- 5.3.1. 最小比較ソート
- 5.3.2. 最小比較マージ
- 5.3.3. 最小比較選択
- 5.3.4. ソートのためのネットワーク
- 5.4.外部ソート
- 5.4.1. マルチウェイマージと置換選択
- 5.4.2. ポリフェーズマージ
- 5.4.3. カスケードマージ
- 5.4.4. テープを逆方向に読む
- 5.4.5. 振動ソート
- 5.4.6. テープマージに関する実際的な考慮事項
- 5.4.7. 外部基数ソート
- 5.4.8. 2本のテープを使ったソート
- 5.4.9. ディスクとドラム
- 5.5. 概要、歴史、参考文献
- 5.1.順列の組み合わせ特性
- 第6章 –検索
第 4A 巻 – 組み合わせアルゴリズム、パート 1
- 第7章 組み合わせ探索
- 7.1.ゼロと1
- 7.2. あらゆる可能性を生み出す
- 7.2.1. 基本的な組み合わせパターンの生成
- 7.2.1.1. すべてのn組を生成する
- 7.2.1.2. すべての順列を生成する
- 7.2.1.3. すべての組み合わせを生成する
- 7.2.1.4. すべての整数パーティションの生成
- 7.2.1.5. すべてのセットパーティションの生成
- 7.2.1.6. すべてのツリーを生成する
- 7.2.1.7. 歴史とその他の参考文献
- 7.2.1. 基本的な組み合わせパターンの生成
第 4B 巻 – 組み合わせアルゴリズム、パート 2
- 第7章 組み合わせ探索(続き)
- 7.2. すべての可能性の生成(続き)
- 7.2.2.バックトラックプログラミング
- 7.2.2.1.ダンシングリンク( Exact coverの議論を含む)
- 7.2.2.2.満足度
- 7.2.2.バックトラックプログラミング
- 7.2. すべての可能性の生成(続き)
計画中
第4C巻、第4D巻、第4E巻、第4F巻 – 組み合わせアルゴリズム[15]
- 第7章 組み合わせ探索(続き)
- 7.2. すべての可能性の生成(続き)
- 7.2.2.バックトラックプログラミング(続き)
- 7.2.3. 非同値パターンの生成(ポリア列挙定理の議論を含む)(KaskiとÖstergård著「コードとデザインの分類アルゴリズム」の第4章「同型排除のテクニック」を参照)
- 7.3.最短経路
- 7.4.グラフアルゴリズム
- 7.4.1. コンポーネントとトラバーサル
- 7.4.1.1.結合検索アルゴリズム
- 7.4.1.2.深さ優先探索
- 7.4.1.3. 頂点と辺の接続性
- 7.4.2. グラフの特殊クラス
- 7.4.3.エキスパンダーグラフ
- 7.4.4.ランダムグラフ
- 7.4.1. コンポーネントとトラバーサル
- 7.5. グラフと最適化
- 7.6. 独立理論
- 7.6.1. 独立構造
- 7.6.2. 効率的なマトロイドアルゴリズム
- 7.7. 離散動的計画法(転送行列法も参照)
- 7.8.分岐限定法
- 7.9. ヘラクレス課題(NP困難問題とも呼ばれる)
- 7.10.近似最適化
- 7.2. すべての可能性の生成(続き)
- 第 8 章 –再帰(「アルゴリズムの分析に関する選集」の第 22 章)
第5巻 – 構文アルゴリズム
第6巻 – 文脈自由言語の理論[16]
- 第11章 数理言語学[17]
第7巻 – コンパイラテクニック
- 第12章 プログラミング言語の翻訳[17]
英語版
現在の版
現在の版は巻数順に次のとおりです。
- コンピュータプログラミングの芸術、第1巻〜第4B巻ボックスセット。(マサチューセッツ州レディング:アディソンウェズリー、2023年)、3904ページ。ISBN 978-0-13-793510-9、0-13-793510-2
- 第1巻:基礎アルゴリズム。第3版(マサチューセッツ州レディング:Addison-Wesley、1997年)、xx+650ページ。ISBN 978-0-201-89683-1、0-201-89683-4 。正誤表:[1](2011-01-08)、[2](2022年、第49刷)。補遺:[3](2011年)。
- 第2巻:半数値アルゴリズム。第3版(マサチューセッツ州レディング:Addison-Wesley、1997年)、xiv+762頁。ISBN 978-0-201-89684-8、0-201-89684-2 。正誤表:[4](2011-01-08)、[5](2022年、第45刷)。補遺:[ 6] (2011年)。
- 第3巻:ソートと検索。第2版(マサチューセッツ州レディング:アディソンウェスレー、1998年)、xiv+780ページ+折り込み。ISBN 978-0-201-89685-5、0-201-89685-0 。正誤表:[7](2011-01-08)、[8](2022年、第45刷)。補遺: [9] ( 2011年)。
- 第4A巻:組み合わせアルゴリズム、パート1。初版(アッパーサドルリバー、ニュージャージー:アディソンウェズリー、2011年)、xv+883pp。ISBN 978-0-201-03804-0、0-201-03804-8。正誤表:[10] ( 2011年)、[11](2022年、第22刷)。
- 第4B巻:組み合わせアルゴリズム、パート2。初版(アッパーサドルリバー、ニュージャージー:アディソンウェズリー、2023年)、xviii+714pp。ISBN 978-0-201-03806-4、0-201-03806-4。正誤表:[12](2023年、第1刷)。
- 第1巻、冊子1: MMIX – 新世紀に向けたRISCコンピュータ。(Addison-Wesley、2005-02-14)、144ページ。ISBN 0-201-85392-2。正誤表: [13] (2024-05-14) (第1巻第4版に掲載予定)
以前の版
全巻
これらの巻は新しい版に置き換えられ、日付順に並べられています。
- 第1巻:基礎アルゴリズム。初版、1968年、xxi+634ページ、ISBN 0-201-03801-3。[18]
- 第2巻:半数値アルゴリズム。初版、1969年、xi+624pp、ISBN 0-201-03802-1。[18]
- 第3巻:ソートと検索。初版、1973年、xi+723pp+折り込み、ISBN 0-201-03803-X。正誤表:[14]。
- 第1巻:基礎アルゴリズム。第2版、1973年、xxi+634pp、ISBN 0-201-03809-9。訂正:[15]。
- 第2巻:半数値アルゴリズム。第2版、1981年、xiii+ 688ページ、ISBN 0-201-03822-6。訂正:[16]。
- コンピュータプログラミングの芸術、第 1 巻から第 3 巻のボックスセット。第 2 版 (マサチューセッツ州レディング: Addison-Wesley、1998 年)、pp . ISBN 978-0-201-48541-7、0-201-48541-9
- コンピュータプログラミングの芸術、第 1 巻から第 4 巻までのボックスセット。第3 版 (マサチューセッツ州レディング: Addison-Wesley、2011 年)、3168 ページ。ISBN 978-0-321-75104-1、0-321-75104-3
束
第 4 巻、分冊0 ~ 4 が改訂され、第 4A 巻として発行されました。
- 第4巻、第0巻:組み合わせアルゴリズムとブール関数入門。(Addison-Wesley Professional、2008-04-28)vi+240pp、ISBN 0-321-53496-4。正誤表:[17](2011-01-01)。
- 第4巻、第1巻:ビットごとのトリックとテクニック、二分決定図。(Addison-Wesley Professional、2009-03-27)viii+260pp、ISBN 0-321-58050-8。正誤表:[18](2011-01-01)。
- 第4巻、第2巻:すべてのタプルと順列の生成。(Addison-Wesley、2005-02-14)v+127pp、ISBN 0-201-85393-0。正誤表:[19](2011-01-01)。
- 第4巻、第3巻:すべての組み合わせとパーティションの生成。(Addison-Wesley、2005-07-26)vi+150pp、ISBN 0-201-85394-9。正誤表:[20](2011-01-01)。
- 第4巻、第4巻:すべての木の生成;組み合わせ生成の歴史。(Addison-Wesley、2006-02-06)vi+120pp、ISBN 0-321-33570-8。正誤表:[21](2011-01-01)。
第 4 巻、第 5 ~ 6 巻が改訂され、第 4 巻 B として発行されました。
- 第4巻、第5巻:数学的予備知識の再考、バックトラッキング、ダンシングリンク。(Addison-Wesley、2019-11-22)xiii+382pp、ISBN 978-0-13-467179-6。正誤表:[22](2020-03-27)
- 第4巻、第6巻:満足度。(Addison-Wesley、2015-12-08)xiii+310pp、ISBN 978-0-13-439760-3。正誤表:[23](2020-03-26)
前束
第1巻
- プレファシクル 1 は改訂され、第 1 巻、ファシクル 1 として発行されました。
第4巻
- プレファシクル0A、0B、0C は改訂され、第 4 巻、ファシクル 0 として発行されました。
- プレファシクル 1A と 1B は改訂され、第 4 巻、ファシクル 1 として発行されました。
- プレファシクル 2A と 2B は改訂され、第 4 巻、ファシクル 2 として発行されました。
- プレファシクル 3A と 3B は改訂され、第 4 巻、ファシクル 3 として発行されました。
- プレファシクル 4A と 4B は改訂され、第 4 巻、ファシクル 4 として発行されました。
- プレファシクル 5A、5B、5C は改訂され、第 4 巻、ファシクル 5 として発行されました。
- プレファシクル 6A は改訂され、第 4 巻、ファシクル 6 として発行されました。
残りのプレファシクルには、将来のファシクルや巻に掲載される予定の草稿が含まれています。
- 第 4 巻、プレファシクル 7A: 制約充足
- 第 4 巻、プレファシクル 8A: ハミルトン経路とサイクル
- 第 4 巻、プレファシクル 8B: クリーク
- 第 4 巻、プレファシクル 9B: パズルの寄せ集め
- 第 4 巻、プレファシクル 9C: バックトラック コストの見積もり
- 第 4 巻、プレファシクル 12A: コンポーネントとトラバーサル (PDF 版)
- 第4巻、プレファシクル14A: 二部マッチング
- 第 4 巻、プレファシクル 16A: 再帰入門
参照
参考文献
注記
- ^ 献辞の文言は初版では若干異なっていた。
引用
- ^ 「ボックス3、フォルダー1のメモ」。
- ^ Pearson InformIT ウェブページブックコンテンツタブ 。Addison -Wesley Professional。2022-09-28。ISBN 9780201038064。
- ^ Pearson InformITウェブページ 。Addison -Wesley Professional。2022-09-28。ISBN 9780201038064。
- ^ 「CP 2022 すべての質問に回答、2022年7月31日~8月5日、イスラエル、ハイファ」。
- ^ Frana, Philip L. (2001-11-08). 「Donald E. Knuth とのインタビュー」. hdl :11299/107413.
- ^ ファイゲンバウム、エドワード(2007)。「ドナルド・クヌースの口述歴史」(PDF)。コンピュータ歴史博物館。 2008年12月9日時点のオリジナルよりアーカイブ(PDF) 。 2020年9月17日閲覧。
- ^ Knuth, Donald E. (1993-08-23). 「今週の引用クラシック」(PDF) .現在のコンテンツ. p. 8.
- ^ ab Knuth, Donald Ervin (2019-08-03). 「The Art of Computer Programming (TAOCP) 2nd Edition, 1973」。2019-08-03時点のオリジナルよりアーカイブ。2018-02-06に閲覧。
- ^ Albers, Donald J. (2008). 「Donald Knuth」。Albers, Donald J.、Alexanderson, Gerald L. (編著) 『数学者たち:プロフィールとインタビュー(第 2 版)』。AK Peters。ISBN 978-1-56881-340-0。
- ^ 「GNU MDK - GNU プロジェクト - フリーソフトウェア財団」。www.gnu.org。2022年 10 月 23 日閲覧。
- ^ 「ドナルド・E・クヌース – AMチューリング賞受賞者」。AMチューリング。 2017年1月25日閲覧。
- ^ モリソン、フィリップ、モリソン、フィリス(1999年11月~12月)。「1世紀の科学を形成した100冊ほどの本」。アメリカン・サイエンティスト。87 (6)。シグマ・サイ、科学研究協会。2008年8月20日時点のオリジナルよりアーカイブ。 2008年1月11日閲覧。
- ^ ウェインバーガー、マット。「ビル・ゲイツはかつて、『この非常に難しい本を読み終えたら、必ず履歴書を送ってください』と言った」。ビジネス・インサイダー。2016年6月13日閲覧。
- ^ Lohr, Steve (2001-12-17). 「フランシス・E・ホルバートン、84歳、初期のコンピュータプログラマー」ニューヨークタイムズ。 2010年5月17日閲覧。
- ^ D'Agostino, Susan (2020-04-16). 「物語を語るのをやめられないコンピューター科学者」. Quanta Magazine . 2023-06-26閲覧。
現在82歳の彼は第4巻のパートBに熱心に取り組んでおり、この本には少なくともパートAからFまでが含まれると予想しています。
- ^ 「TAOCP – 今後の計画」。
- ^ ab 「TAOCP – パンフレット」(PDF)。
- ^ ab Wells, Mark B. (1973). 「レビュー: コンピュータプログラミングの技法、第 1 巻 基本アルゴリズム、第 2 巻 半数値アルゴリズム、Donald E. Knuth 著」(PDF)。アメリカ数学会報。79 (3): 501–509。doi : 10.1090/ s0002-9904-1973-13173-8。
出典
外部リンク
- トピックの概要(Knuth の個人ホームページ)
- 『The Art of Computer Programming』第 1 巻のお知らせ
- 2001 年、ミネソタ大学チャールズ バベッジ研究所(ミネアポリス) でのドナルド E. クヌース氏へのオーラル ヒストリー インタビュー。クヌース氏は、ソフトウェアの特許、構造化プログラミング、コラボレーション、およびTeXの開発について語っています。オーラル ヒストリーでは、『The Art of Computer Programming』の執筆についても語っています。
- 「ロバート W フロイドを偲んで」、ドナルド E. クヌース著、2003 年 - (ボブ フロイドの影響について)
- TAoCP とコンピュータ サイエンスへの影響 (Softpanorama)
