The Art of Computer Programming
The Art of Computer Programming | ||
---|---|---|
著者 | ドナルド・クヌースDonald E. Knuth | |
発行日 | (原著)Volume 1(first edition 1968年、third edition 1997年)Volume 2(first edition1969年、third edition1997年)Volume 3(first edition 1973年、second edition1998年)Volume 4(2011年~(分冊刊行中)) | |
発行元 | アディソン-ウェスリー(原書) | |
ジャンル | 学術書(計算機科学) | |
国 |
![]() | |
言語 | 英語 | |
形態 | 上製本 | |
公式サイト | http://www-cs-faculty.stanford.edu/~knuth/ | |
コード |
→「§ 書籍」を参照 | |
![]() | ||
![]() | ||
![]() | ||
|
『The Art of Computer Programming』(ジアートオブコンピュータプログラミング、略称 TAOCP)は、コンピュータプログラミングに関する書籍のシリーズである。様々なアルゴリズム(計算手法)について、その背景や歴史にまで踏み込んで徹底的に解説しており、アルゴリズム解析も扱う。著者のドナルド・クヌースはこの執筆を、自身のライフワークと位置づけている。
概要
全7巻の刊行を予定するプロジェクトであり、2024年現在、第1巻から第4巻第6分冊(第4B巻)までが刊行されている。
このプロジェクトは1962年に始まり、当初は全12章から成る1冊で完結するつもりで着手されたのだが、その後に7巻の計画に膨らみ、最初の3巻は1968年、1969年、1973年に出版された。第4巻の執筆は1973年に開始されたのだが、1976年に第2巻の第2版の準備をしていた際に、初版のような鉛版による組版 (en:Hot metal typesetting) が行われなくなっていてその仕上がりにクヌースは納得できず、自分で組版ソフトウェアの「TeX」を(当初は1978年のサバティカルが終わるまでには完全に仕上げるつもりで)作り始めてしまったので、その第4巻の執筆が先送りになった。
今後の計画についてスタンフォード大学ウェブサイト上にあるクヌース用ディレクトリ内のページで確認できる。構想はおおむね執筆開始当初と変わっておらず、第5巻は構文的アルゴリズムについてで、第9章が字句スキャナ、第10章が文字列解析の技術、第6巻は文脈自由文法の理論、第7巻がコンパイラ技術となっている。クヌースは、第5巻までの内容は順序機械を扱う計算機プログラミングの中核であるとして、また、第6・7巻の内容は重要でありながら専門的なものとして、それぞれ位置づけている。なお、第6・7巻(?)の内容は、ドラゴンブックと通称される1986年刊の書籍en:Compilers:_Principles,_Techniques,_and_Tools等で、この40年の間に、すでにさまざまな著者によって書籍が充実した分野でもある。
- 評価
その全体構想から見れば現在も未完の著作であるが、すでに偉業とみなされている。第3巻初版までが刊行されていた1974年の時点で受賞したチューリング賞(計算機科学界のノーベル賞とも言われる)の受賞理由の主要な要素として本著作を通した学術への貢献が含まれている[1]。
- 補足
2009年に刊行された第4A巻(第1分冊)では、湊真一が考案したデータ構造「零抑制二分決定図(ZDD)」も項目として掲載され解説された[2]。
翻訳版
『The Art of Computer Programming』は多くの言語へ翻訳されている。2024年時点で、第4A巻(第0から4分冊)までの翻訳が揃っているのはロシア語、日本語、中国語、朝鮮語であり、第4B巻(第5から6分冊)の翻訳があるのは日本語のみである。
日本語版
- サイエンス社版
最初の日本語訳版は、1978年から1986年に、原著第2巻までの内容に相当する全4分冊がサイエンス社から出版された。
この訳版では用語に対する多くの訳語が提案された。島内剛一は「監訳のことば」[3]で『翻訳に当って、術語をできるだけ「よい日本語」に置き換えていただくことを訳者にお願いした。(中略)いわゆる片仮名の術語をできるだけ追放することには成功したと思っている。』と翻訳の方針を述べている。続けて「また原著のふん囲気を、なるべく多く読者にお伝えすることにも気を配ったつもりである。」「訳者注を添えていただいて万全を期した。」と監訳に当たってのこだわりを述べている。広瀬健、米田信夫、筧捷彦らの各訳者も、安易なカナ文字(カタカナ外来語)に満足せず美しい日本語の術語を作ろうと腐心した旨を、訳者まえがきで述べている。米田と筧は『ここで採用した術語について批判をしていただき、そこから計算機分野の語について見直しが行なわれ、ついには「美しい日本語』の術語が作られてゆくようになるなら、訳者望外の幸いである。」[4]と、用語の和訳に関する将来への期待まで述べられている。
アスキー社版、カドカワドワンゴ社アスキードワンゴ版
その後、21世紀に入った後に改めて、アスキーから新しい日本語訳版が出版された。2007年9月までに3巻までと改訂版分冊1巻、4巻の分冊2,3が刊行されていた。
その後、KADOKAWAドワンゴに在籍する元アスキーの編集者が担当する出版レーベル「アスキードワンゴ」[5]により、2015年6月の1巻再刊から再開され、2017年3月に旧4巻0-4のまとまった分冊である4A巻が刊行されている[6]。
書籍
- 原著
- The Art of Computer Programming Volume 1 Fundamental Algorithms Third Edition, Donald E.Knuth, Addison-Wesley, 1997, ISBN 978-0201896831
- The Art Of Computer Programming Volume 1 Fascicle 1 MMIX -- A RISC Computer For The New Millennium, Donald E.Knuth, Addison-Wesley, 2005, ISBN 978-0201853926
- The Art of Computer Programming Volume 2 Seminumerical Algorithms Third Edition, Donald E.Knuth, Addison-Wesley, 1997, ISBN 978-0201896848
- The Art of Computer Programming Volume 3 Sorting and Searching Second Edition, Donald E.Knuth, Addison-Wesley, 1998, ISBN 978-0201896855
- The Art Of Computer Programming Volume 4 Fascicle 2 Generating All Tuples And Permutations, Donald E.Knuth, Addison-Wesley, 2005, ISBN 978-0201853933
- The art Of Computer Programming Volume 4 Fascicle 3 Generating All Combinations And Partitions, Donald E.Knuth, Addison-Wesley, 2005, ISBN 978-0201853940
- The Art of Computer Programming Volume 4 Fascicle 4 Generating All Trees -- History of Combinatorial Generation, Donald E.Knuth, Addison-Wesley, 2006, ISBN 978-0321335708
- The Art of Computer Programming Volume 4 Fascicle 0 Introduction to Combinatorial Algorithms and Boolean Functions, Donald E.Knuth, Addison-Wesley, 2008, ISBN 978-0321534965
- The Art of Computer Programming Volume 4 Fascicle 6 Satisfiability, Donald E.Knuth, Addison-Wesley, 2015, ISBN 978-0134397603
- The Art of Computer Programming Volume 4 Fascicle 5 Mathematical Preliminaries Redux; Backtracking; Dancing Links, Donald E.Knuth, Addison-Wesley, 2019, ISBN 978-0134671796
- 日本語訳版
- サイエンス社版(原著第2版に対応)
- 「基本算法 I」~基礎概念~、広瀬健(訳)、1978年。 [2] ISBN 4-7819-0302-9
- 「基本算法 II」~情報構造~、米田信夫(訳)、筧捷彦(訳)、1978年。 [3] ISBN 4-7819-0303-7
- 「準数値算法」~乱数~、渋谷政昭(訳)、1981年。 [4] ISBN 4-7819-0304-5
- 「準数値算法」~算術演算~、中川圭介(訳)、1986年。 [5] ISBN 4-7819-0426-2
- KADOKAWA版(旧アスキー版)
- 『The Art of Computer Programming Volume 1 Fundamental Algorithms Third Edition 日本語版』、Donald E.Knuth(著)、有澤誠(監訳)、和田英一(監訳)、青木孝(訳)、筧一彦(訳)、鈴木健一(訳)、長尾高弘(翻訳)、アスキー、2004年、ISBN 978-4-7561-4411-9
- 『The Art of Computer Programming Volume 1 Fascicle 1 MMIX--A RISC Computer for the New Millennium 日本語版』、Donald E.Knuth(著)、有澤誠(監訳)、和田英一(監訳)、アスキー、2006年、ISBN 978-4-7561-4712-7
- 『The Art of Computer Programming Volume 2 Seminumerical algorithms Third Edition 日本語版』、Donald E.Knuth(著)、有澤誠(監訳)、和田英一(監訳)、斎藤博昭(訳)、長尾高弘(訳)、松井祥悟(訳)、松井孝雄(訳)、山内斉(訳)、アスキー、2004年、ISBN 978-4-7561-4543-7
- 『The Art of Computer Programming Volume 3 Sorting and Searching Second Edition 日本語版』、Donald E.Knuth(著)、有澤誠(監訳)、和田英一(監訳)、アスキー、2006年、ISBN 978-4-7561-4614-4
- 『The Art of Computer Programming Volume 4A Combinatorial Algorithms Part1 日本語版』、Donald E.Knuth(著)、有澤誠(監訳)、和田英一(監訳)、筧 一彦 (翻訳)、 小出 洋 (翻訳)、Kadokawa、2017年、ISBN 978-4048930550
- サイエンス社版(原著第2版に対応)
脚注
- ^ David Walden. “Donald ("Don") Ervin Knuth - A.M. Turing Award Laureate”. Association for Computing Machinery. 2019年10月17日時点のオリジナルよりアーカイブ。2024年10月4日閲覧。
- ^ 湊真一 [1]
- ^ ドナルド・クヌース 著、広瀬健 訳『基本算法 I 基礎概念』サイエンス社、1978年3月1日、2頁。
- ^ ドナルド・クヌース 著、米田信夫、筧捷彦 訳『基本算法 II 情報構造』サイエンス社、1978年4月1日、5頁。
- ^ KADOKAWA http://asciidwango.jp/
- ^ 4A巻 https://www.amazon.co.jp/dp/4048930559/