1949年5月6日、英国ケンブリッジ大学数学研究所において、EDSAC(Electronic Delay Storage Automatic Calculator)が稼働を始めた。世界で初めて実用に耐える蓄積プログラム方式コンピューター、いわば「世界初の実用コンピューター」の誕生である。
プロジェクトを率いたのはモーリス・ウィルクス教授であり、最初に走らせたのは平方数の表を計算するプログラムだった。EDSACは、ENIACのように物理的配線の組み換えを必要とせず、紙テープに書かれた「コード」を読み込むだけで何にでもなれる汎用機としての性格を確立した。
さらにウィルクスらが体系化したサブルーチン・ライブラリの思想は、後の再利用可能コード、オープンソース、APIエコシステムへとつながる思想的源流となる。本稿は、77年前のあの日に「ロジックが物質から切り離された」歴史的瞬間を辿りつつ、現代のソフトウェア定義(Software-Defined)社会との一本の系譜を描き出すものである。
真空管の唸りと、紙テープに刻まれた最初の「ロジック」
1949年5月6日、英国ケンブリッジ。第二次世界大戦の傷跡がまだ街のあちこちに残るその朝、大学数学研究所の一室には、おそらく研究員たちの息づかいまでもが聞こえそうなほどの緊張感が満ちていたはずです。部屋いっぱいを占める巨大な機械、約3,000本の真空管が放つ熱、水銀遅延線がゆっくりと音波を巡らせるかすかな振動。そのすべての中心に、一人の男性が立っていました。モーリス・ウィルクス教授です。
彼の手にあるのは、5穴の紙テープ。穴の配列という、ただそれだけの「指示」が読み込まれた瞬間、機械は唸り、計算を始めます。出力されたのは、平方数の表でした。1の二乗は1、2の二乗は4、3の二乗は9──。電卓があれば子どもでも書ける表です。しかしその一覧表は、人類の技術史において、それまでのどの計算結果とも決定的に違う意味を持っていました。計算手順そのものが、物質ではなくテープ上の論理として外から与えられた、最初の「実用機」の出力だったからです。
このプログラムを書いたのは、カナダから留学していた若き研究者ベアトリス・ワースリーでした。同じ日には、もう一つ、素数を列挙するプログラムも稼働しています。ENIAC稼働からわずか3年。世界はまだ、目の前の機械が何を意味するのか完全には理解していませんでした。しかし、この一日が、私たちが今ポケットの中で、クラウドの上で、自動車のハンドルの奥で当たり前のように享受している「ソフトウェアの世界」の起点となるのです。
物理的な「結線」から、論理的な「コード」へ
EDSACの偉大さを理解するためには、その前夜にあった「不自由」を知る必要があります。1946年に米国で完成したENIAC(電子式数値積分計算機)は、確かに18,000本の真空管を駆使した革命的な機械でした。しかし、ENIACで別の問題を解こうとするたびに、技術者たちは無数のケーブルを物理的に引き直し、スイッチを組み替える必要があったのです。新しい計算をさせるとは、すなわち機械を一度「分解」して「組み立て直す」ことに等しかった。当時のコンピューターは、まだハードウェアの檻に閉じ込められた存在でした。
この閉塞を理論的に打ち破ったのが、ハンガリー出身の数学者ジョン・フォン・ノイマンが1945年に書いた「First Draft of a Report on the EDVAC」という草稿です。命令とデータを同じメモリーに格納し、命令を一つずつ読み出して実行する──いわゆる蓄積プログラム方式(フォン・ノイマン型アーキテクチャー)の原型がそこに記されていました。
ウィルクスはこの思想に強く感化されます。1946年夏、彼はフィラデルフィアのムーア・スクールで開催された伝説の連続講義の最終週に参加し、ENIACとEDVACの設計思想を直に学び、英国に戻るとすぐ、ケンブリッジで実装に取りかかりました。マンチェスター大学の「ベイビー(Manchester Baby)」が世界初の蓄積プログラム方式機として稼働するのは1948年6月のこと。ただしこちらは実験機の域を出ませんでした。初日から実用に耐え、計算ごとにリセットを必要としない、研究者が日常的に使える完成された一台。研究現場の問題を実際に解くために設計され、初日から運用に耐えうる機能を備えた最初の蓄積プログラム方式コンピューター──事実上の「世界初の実用コンピューター」こそが、EDSACだったのです。
これは単なる技術的進歩ではありません。コンピューターを「特定の目的のために配線された箱」から、「プログラム次第で何にでもなれる汎用の論理装置」へと変えた、思想的な転回点でした。ロジックが物質から切り離された日。EDSACの稼働は、まさにこの言葉に尽きます。事実、稼働後ほどなくして、EDSACはケンブリッジ大学の研究者たちによって遺伝学、X線結晶構造解析、電波天文学など、まったく異なる分野の問題に次々と適用されていきます。後年、EDSACおよび後継機EDSAC 2の助力に直接感謝を述べたノーベル賞受賞者は、ジョン・ケンドリュー、マックス・ペルーツ(化学賞、1962年)、アンドリュー・ハクスリー(医学・生理学賞、1963年)、マーティン・ライル(物理学賞、1974年)と、実に三度に及びました。一台の汎用機が、複数の科学領域の地平を同時に押し広げたのです。
「サブルーチン」という発明──現代エコシステムの原点
EDSACの遺産として、ハードウェア面の革新と並んで──いや、長期的に見ればそれ以上に──現代に深い影を落としているのが、ウィルクスとともに研究を主導した若き才能、デヴィッド・ウィーラーらが体系化した「サブルーチン」の概念です。
初期のプログラムでは、たとえば三角関数や平方根を計算する処理を、必要になるたびにプログラマーが毎回ゼロから書き直していました。これは時間の浪費であるだけでなく、間違いの温床でもあります。ウィーラーが考案したのは、よく使う処理を独立した小さなプログラム(サブルーチン)として鋼鉄のキャビネットに紙テープの形で保管し、必要な時に呼び出して自分のプログラムに組み込む、という運用でした。EDSACのサブルーチン・ライブラリは最終的に100を超える規模に達し、再利用可能なコード資産の最初期の体系的実例として機能しました。
1951年、ウィルクス、ウィーラー、スタンレー・ギルの3人は、これらの実践的知見を「The Preparation of Programs for an Electronic Digital Computer」という書籍にまとめます。著者の頭文字をとってWWGと呼ばれるこの本は、世界最初期のプログラミングの教科書として知られ、サブルーチン、アセンブラー、ライブラリ、デバッグ手法(ウィーラーは「ポストモーテム・ルーチン」と命名し、後にメモリーダンプとして定着)といった、現代の開発者にとって空気のように当たり前の概念を一冊に凝縮していました。
ここで、日本の読者にとって特別な意味を持つ史実に触れておきたいと思います。日本の初期電子計算機の一つである「TAC(Tokyo Automatic Computer)」、東芝と東京大学の共同開発機は、EDSACから強い影響を受けた設計をもち、WWGに掲載されたサブルーチン・ライブラリの資産を共有しうる構造を備えていたと伝えられています。1949年のケンブリッジで生まれたコード資産が、海を渡って戦後復興期の日本の科学技術と接続していた──。「他者が書いたコードを、世界のどこにいても自分の仕事に組み込む」という、現代のオープンソースやAPIエコシステムにつながる発想が、いかに早い段階で、そして国境を越える形で芽吹いていたかを物語る、興味深い系譜の一つだと言えます。
GitHubでスターを集める美しいライブラリも、npmやPyPIで配信されるパッケージも、SaaS同士をつなぐOpenAPI仕様書も、その思想的祖先をたどればケンブリッジの鋼鉄のキャビネットに至ります。「巨人の肩の上に立つ」というニュートン以来の知の蓄積の作法を、ソフトウェアという領域で最初に実装してみせたのが、ウィルクスとそのチームでした。
EDSACから「Software-Defined」の未来へ
1949年から77年。EDSACが点した火は、いま世界全体を覆う巨大な現象として広がっています。それが、「Software-Defined(ソフトウェア定義)」というパラダイムです。
SDV(Software Defined Vehicle)は、自動車の機能をハードウェア固定の制御から解放し、無線アップデートで運転支援機能や走行特性を後から書き換える未来を提示します。SDN(Software Defined Network)は、ルーターやスイッチという「箱」の挙動を、抽象化されたコントロールプレーンから一括で書き換えることを可能にしました。クラウドの世界では、IaC(Infrastructure as Code)として、サーバーやストレージ、ネットワークそのものがYAMLやTerraformコードの一行で生成・破棄される対象となっています。これらすべての根底にあるのは、「物理的な機能は、論理的なコードによって後から定義できる」という、まさにEDSACが77年前に証明した思想そのものです。
そして今、その「ソフトウェアの自由」は、さらに新しい段階に入ろうとしています。生成AIがコードを書き、人間の自然言語そのものがプログラミングのインターフェースに近づきつつある時代です。コードがハードウェアから解放されたのが第一段階だとすれば、コードを書くという行為そのものが「特定のスキルを持つ専門家」から解放されつつあるのが、私たちが目撃している第二段階だと言えるかもしれません。
もしウィルクス教授が、AIアシスタントが数十行のサブルーチンを数秒で生成し、エンジニアがそれを批評して採用するかどうかを判断する現在の開発現場を見たら、何と言うでしょうか。おそらく彼は、自分たちが鋼鉄のキャビネットの中で大切に保管していた紙テープの「ライブラリ」が、これほどまでに豊かで、これほどまでに動的なものに成長したことを、心から喜ぶのではないかと、私は思うのです。
1949年5月6日にケンブリッジで点された小さな火。それは、平方数を計算するという、技術的にはささやかな出来事でした。しかし、人類が初めてロジックを物質から自由にした日として、その意義はいま私たちの暮らしのすみずみで、ようやくその全容を現しつつあります。次の77年、ソフトウェアはさらにどこへ向かうのでしょうか。その問いの起点に、確かにあの日のケンブリッジが横たわっています。
information
【用語解説】
蓄積プログラム方式(Stored-program computer)
命令(プログラム)とデータを同一のメモリーに格納し、命令を順次読み出して実行するコンピューターの基本設計思想である。1945年にジョン・フォン・ノイマンが草稿「First Draft of a Report on the EDVAC」で定式化したことから「フォン・ノイマン型アーキテクチャー」とも呼ばれる。物理配線を組み替えずにプログラムを差し替えるだけで挙動を変えられるため、汎用コンピューターの基礎となった。現代のほぼすべてのコンピューターはこの方式の延長線上にある。
ENIAC(エニアック / Electronic Numerical Integrator and Computer)
1946年に米国ペンシルベニア大学で完成した、世界初の汎用電子式デジタル計算機の一つである。約18,000本の真空管を使用した巨大な機械であり、当時の計算能力としては画期的だった。ただし蓄積プログラム方式ではなく、別の問題を解くたびにケーブルとスイッチを物理的に組み替える必要があった。EDSACは、このENIACが抱えていた制約を、フォン・ノイマンの設計思想によって克服した次世代機にあたる。
サブルーチン(Subroutine)
プログラム内で繰り返し利用される処理を独立した単位として切り出し、必要に応じて呼び出して使う仕組みである。EDSACのチームが体系化し、1951年のWWG(Wilkes-Wheeler-Gill)の教科書で広く世界に伝えられた。共通処理をライブラリとして蓄積し再利用するという発想は、現代の関数、メソッド、モジュール、パッケージ、API、そしてオープンソース文化の直接的な源流である。
【参考リンク】
The National Museum of Computing「EDSAC」(外部)
EDSACの設計と運用、現在進行中のレプリカ復元プロジェクトの詳細を伝える英国国立コンピューティング博物館の公式ページである。
University of Cambridge「70 years since the first computer designed for practical everyday use」(外部)
ケンブリッジ大学コンピューター科学技術学部によるEDSAC稼働の歴史的意義と、ノーベル賞研究への貢献に関する公式解説である。
Computer History Museum「1949: EDSAC computer employs delay-line storage」(外部)
米国コンピューター歴史博物館による、水銀遅延線メモリーを採用したEDSACの技術仕様に関するアーカイブである。
ACM A.M. Turing Award「Maurice V. Wilkes」(外部)
1967年チューリング賞を受賞したウィルクスの生涯と業績を、ACM公式アーカイブが詳述する一次資料である。
Communications of the ACM「In Praise of ‘Wilkes, Wheeler, and Gill’」(外部)
初のプログラミング教科書WWGの歴史的意義と、サブルーチン・ライブラリが世界へ広まった経緯を辿るACM公式コラムである。
【関連記事】
2月14日【今日は何の日?】世界初のコンピュータENIAC公開:女性プログラマーが切り拓いた未来
ENIACが配線で動いた時代の物語。EDSACが越えた「物理結線時代」のリアルを、6人の女性プログラマーの貢献とともに描いた姉妹篇です。
12月28日【今日は何の日?】ノイマン生誕|AIが壊す「天才の呪縛」と脳型チップの夜明け
EDSACの設計思想の源流であるノイマン型アーキテクチャ。70年以上君臨したその「美しい分業」が、いま生成AIの前でどう揺らいでいるかを論じた一篇です。
2月25日【今日は何の日?】「プログラマブルな世界」の誕生:1959年、コードが物理的実体を得た日
EDSAC稼働から10年後、MITが工作機械に英語に近いコマンドを与えた瞬間。本記事の「ソフトウェア定義」思想が物理世界へと拡張された次のステップを読み解きます。
4月19日【今日は何の日?】フレデリック・ブルックスの誕生日――「銀の弾丸はない」と語ったソフトウェア工学の巨人
EDSACから20年、ソフトウェアが「巨大」になり始めた時代。サブルーチン・ライブラリの先に立ち上がった「ソフトウェア工学」という学問の誕生を辿ります。
【編集部後記】
毎年5月6日は、テクノロジーに関わる一人として、私が静かに手を止めて思い出すようにしている日です。スマートフォンのロックを解除する、車のナビに目的地を入力する、クラウドにファイルをアップロードする──そのすべての行為の根っこに、77年前のケンブリッジの一室があるのだと考えるとき、不思議な感慨が胸に広がります。
テクノロジーは、しばしば「冷たいもの」「人間味のないもの」と語られがちです。しかし、その歴史を一段深く覗くと、そこには未来を信じてやまなかった研究者たちの願いや、若き留学生が紙テープに刻んだ祈りのような数式が、確かに息づいています。EDSACの最初のプログラムを書いたベアトリス・ワースリーは、後にカナダ初の女性コンピューター科学者の一人として、自国に計算機文化を持ち帰った人物でもあります。あの日のケンブリッジから始まった物語は、世代と国境を越えて、いまもなお紡がれ続けているのです。











