デニス・リッチー

デニス・リッチー:デジタル世界の文法を築いた物静かなる創作者

かつてある計算機学会において、デニス・リッチー(Dennis Ritchie)は、自分の名前が引き寄せる称賛の対応に追われる代わりに、見知らぬ人と名札を交換し、煩わされることなく技術的な議論を楽しんだ。それは、彼が作り出した2つのもの——プログラミング言語とオペレーティングシステム——が現在、地球上のほぼすべての携帯電話、サーバー、ラップトップの基盤をなしている一方で、本人については同僚の言葉を借りれば「物静かで、総じてプライベートを大切にする人物」であり続けたという男にふさわしい光景である。

ハーバード大学、物理学、そして計算機科学への転向

デニス・マカリストア・リッチー(Dennis MacAlistair Ritchie)は1941年9月9日、ニューヨーク州イーストチェスターのブロンクスビルで、ベル研究所(Bell Labs)の科学者の息子として生まれた。1963年にハーバード大学で物理学の学士号を取得し、1968年に応用数学の博士号を取得した後、1967年にベル・テレフォン・ラボラトリーズ(Bell Telephone Laboratories)に入社し、父親の跡を追って自身の生涯のキャリアを定義づける企業へと身を投じた。彼の博士論文は一部の記録が述べるところの正式な意味では技術的に未完成のまま終わったが、その頃には物理学ではなく計算機科学が彼を捉えて離さなくなっていた。

マルチス(Multics)から隅にあるPDP-7へ

ベル研究所におけるリッチーの初期の数年間は、MIT、ベル研究所、ゼネラル・エレクトリック(GE)が共同で構築した野心的なタイムシェアリング・オペレーティングシステムであるマルチス(Multics)に費やされた。1969年にAT&Tがその費用のかかる扱いにくいプロジェクトから撤退したとき、リッチーと同僚のケン・トンプソン(Kenneth Thompson)の手元には、遊休状態のDEC製ミニコン「PDP-7」と、承認されたプロジェクトのない状況が残された。その数ヶ月の間に起きたのは、より無駄がなくエレガントな後継システムの誕生であった。トンプソンとリッチーが「Unix」と呼んだそのオペレーティングシステムは、マルチスがバロック的であったのに対して意図的にシンプルに作られており、組み合わせ可能な少数のツール群が肥大化した単一のモノリスよりも多くのことを成し遂げられるという思想を中心に構築されていた。

Unixを前進させるためのC言語の設計

Unixの初期バージョンは大部分がアセンブリ言語で書かれており、システムを特定のハードウェアに強く結びつけていた——それはまさに、新しいポータブルなオペレーティングシステムが解決すべき問題そのものであった。1971年から1972年頃、チームがUnixをPDP-11に移植する作業に取り組む中で、リッチーはトンプソンの初期のより制限された「B」言語をベースにしてプログラミング言語Cを設計した。C言語はプログラマにアセンブリに匹敵する低水準の制御を与えつつ、マシン間で移植性を維持することを可能にし、1973年までにリッチーとトンプソンはUnixのコアをC言語で書き直した。この決定により、Unixはそれまでのどのオペレーティングシステムも成し得なかった速度と忠実度で新しいハードウェアへと普及することが可能となった。C言語とUnixは互いを強化し合った。UnixはC言語のような言語が何を構築できるかを示し、Unixの背中を押す形でC言語が広まったことにより、1十年以内に世界で最も広く使用されるプログラミング言語の一つとなり、後にC++、Java、そして今日でもソフトウェア界を支配するCファミリーの系統の多くを生み出すことになった。

無料テスト
あなたはどのくらい?

20問、8分の制限時間、そして受験者全員と比べたパーセンタイル。登録不要。

IQテストを受ける →

一冊の本、一つのマニュアル、そして一つの標準

1978年、リッチーはブライアン・カーニハン(Brian Kernighan)との共著で『プログラミング言語C(The C Programming Language)』を執筆した。この簡潔で正確に書かれた本は、正式な標準化が行われるまでの長年、この言語の事実上の仕様書となり、何世代ものプログラマに、現在でも最初のコード行を教えるために使われている「Hello, world」の例を紹介した。彼はそれより前の1971年に『Unixプログラマーズ・マニュアル(Unix Programmer's Manual)』を執筆し、ベル研究所の最初のユーザー向けにシステムを文書化していた。1990年、リッチーはベル研究所のシステムソフトウェア研究部門の部長となり、そこで商業的にはそれほど成功しなかったものの技術的に影響力のあった後期のオペレーティングシステム「Plan 9」や「Infern」を監督した。これらは、2十年前にUnixを生み出したのと同じ設計哲学の拡張であった。

ゆっくりと、そして一気に訪れる認知

リッチーとトンプソンは、Unixの業績により、計算機科学における最高の栄誉である1983年のチューリング賞(Turing Award)を共同受賞した。その受賞理由は、このオペレーティングシステムの「汎用的な」設計がその後の莫大な影響力をもたらしたことを称えるものであった。リッチーは同年にベル研究所のフェロー(Bell Labs Fellow)に任命され、1988年には全米工学アカデミー(National Academy of Engineering)の会員に選出され、1999年にはトンプソンと共にクリントン大統領からアメリカ国家技術賞(National Medal of Technology)を受賞した。2011年には、その死の直前に日本国際賞を受賞した。それにもかかわらず、リッチーは同等の影響力を持つ同僚たちと比較して公の場に姿を現すことがほとんどなく、インタビューを受けることも少なく、シリコンバレーの一部の中には見られたような名声から距離を置いていた。

死去

リッチーは、長い闘病の末、晩年は公の場からほぼ姿を消していたが、2011年10月にニュージャージー州バークレーハイツの自宅で70歳で死去した。彼の死はスティーブ・ジョブズ(Steve Jobs)の死から数日以内であったため、比較的地味な報道に留まった——ジョブズ自身の製品の根底にあるオペレーティングシステムがリッチーの仕事から直接派生していることを踏まえれば、技術コミュニティの多くの人々が鋭く指摘した不均衡であった。

なぜデニスが天才と呼ばれるのか

リッチーが天才と呼ばれる根拠は、ある特定の実証された知的達成、すなわち、ある研究所のミニコンを使えるようにするという本来の狭い目的をはるかに超えて、持続的かつ生成的なものであることが証明された抽象化——言語、オペレーティングシステムのファイルおよびプロセスモデル——を設計したことにある。ロブ・パイク(Rob Pike)をはじめとする彼と共に働いた同僚たちは、彼を単に有能であるだけでなく「真に偉大な精神の持ち主」と呼び、Unixに対するチューリング賞委員会の授賞理由は、1つの企業の内部問題を解決するために構築されながら、世界の計算機インフラストラクチャの大半の基盤となるのに十分な柔軟性を持つ設計の汎用性を明確に称賛した。これは、職人技やカリスマ性とは真に異なる水準の達成である。それは、それを評価する能力を持った同僚によって判断され、C言語およびUnixの子孫のその後の5年間にわたるほぼ普遍的な採用によって実証された、概念的エンジニアリングである。率直な複雑さは、リッチーが滅多に一人で仕事をしなかったことにある——Unixは明確にトンプソンとの共同制作であり、C言語の設計はそれ以前の言語にすでに流通していたアイデアを吸収していた。したがって、ここにおける天才性は、単一の前例のない飛躍というよりも、協力的かつ漸進的なものであり、関係者のすべての証言によれば、リッチー自身は、彼が実践的なエンジニアリング作業と考えていたものに対してこのラベルは誇大であるとして拒絶していただろう。

遺産

Unixの子孫および再実装——Linux、BSD、macOSのDarwinカーネルなどが含まれる——は現在、世界のサーバー、携帯電話、組み込み機器の圧倒的多数を稼働させており、C言語はその誕生から半世紀を経た現在でもオペレーティングシステムおよびシステムプログラミングの基礎であり続けている。リッチーの影響力は、それがほとんど完全に水面下で機能しているという点で異例である。消費者に向けられた技術者とは異なり、彼の名前は計算機科学の外ではほとんど知られていないが、何十億もの人々が、ニュージャージー州のラボの机で彼が構築したツールに知ることなく毎日依存しているのである。

偉人と比較

Henri Poincar vs Johann Sebastian BachJohann Sebastian Bach vs Pablo PicassoFrancis Crick vs William James SidisCharles Dickens vs William James Sidis
IQランキングを見る →すべての比較 →

神童

Connie TalbotBritain's Got Talent Finalist at Age 6 — Debut Album Platinum…Shakuntala DeviShakuntala DeviMultiplied two 13-digit numbers in her head in 28 secondsJeremy ShulerCornell University at 12 — Reading at 21 Months, Top-Decile SAT…Akiane KramarikSelf-Taught Painter from Age 4 — Paintings Sold for Up to…
神童 →

遊んで、また明日

毎日の天才チャレンジ · Brain teaser
Which is heavier: a kilogram of feathers or a kilogram of steel?
答えをタップ ↓
あなたはどの天才? 無料IQテスト