コンピューティング史見聞録(17)
グレース・ホッパーのプログラミング言語

2024年7月1日

今回からは、初期のプログラミング言語作成に関わった人々について紹介していきたい。まずはグレース・ホッパー(Grace Hopper)を取り上げる。

この連載を始めた時には、アメリカの白人男性ばかりを取り上げることになってしまうのではないか、という懸念を持っていた。実際にはコンピューティングの黎明期には数多くの女性が関与していたのだが、後世に名前を残していない人も多い。今回初めて女性であるホッパーを取り上げることとなって少し肩の荷が降りた感がある。ホッパーは実際の業績、そして人となりから人々に強い印象を残した人である。

ホッパー1906年生まれで、コンピューティングに関わった人としてはかなり上の世代である。子供の頃から好奇心に満ちており、家の時計を分解して中を調べるのが楽しい、というような子供であったようである。1934年には数学で博士号を取得し、コンピューターが世の中に出回る前からすでに数学の教授としてキャリアを築きつつあった。しかし、1940年代初頭に第二次世界大戦が起こると、彼女は米国海軍軍人の家系であったこともあり愛国心から軍に志願したものの、任官するには歳を取り過ぎている、そして痩せ過ぎていると言う理由で志願を却下されてしまった。それでも予備役として任官し、1944年からハーバード大学で開発中であったMark Iというコンピューターのプロジェクトにプログラマーとして従事することとなり、まさに草創期からプログラミングを始めたわけである。

グレース・ホッパーとUNIVAC 1960年ごろ
(写真はSmithonian Instituteより)

ホッパーは1949年からはUNIVACというコンピューターの開発に関わることとなり、「自動プログラミング」に関する研究・開発を主導することとなった。ホッパーは、より多くの人がプログラミングできることを重んじたという意味でも先駆的であった。プログラムのコマンドに英単語を使い、英語として読んでも処理の内容が理解できるように、さらにはプログラムの数式の部分は変数と演算記号を使って教科書に書かれている式のように書ける、というアイディアは、彼女が言語やシステムを設計しはじめた当初からのテーマであった。当時でもプログラムは難しい記号を使って機械の最高性能を引き出すようにカッコよく書くべし、という考えが主流であり、初心者でも読みやすくするために冗長な記述を使う、というアイディアは「今までのやり方と違う」ということで大変冷淡な反応を受けた。それでも数年後にようやくプロジェクトとしてスタートさせることができ、1950年代半ばまでに“A-0”や“MATH-MATIC”や“FLOW-MATIC”という名前がつけられた一連の言語を作った。(“-MATIC”というのは、言うなれば深夜のテレビで「こんなに便利」という宣伝をしているような商品につけがちの名前で、ちょっとしたジョークである。)

ちなみに、コンピューティング史の解説で、ときどき「ホッパーが現在でも広く使われているCOBOLという言語を開発した」、という記述を見かけることがある(執筆時はWikipediaの日本語版にもそう書かれている)。だが、この記述は正しくない。ホッパーが作ったFLOW-MATICが、後にCOBOLとなった標準プログラミング言語策定の叩き台となったのだが、ホッパーは委員のメンバーではあったもののCOBOLの設計を主導したわけではないからである。逆にいえば、より先駆的なことを行なって道を切り拓いたのがホッパーであったといえるだろう。

ホッパーはキャリアの後半海軍軍人として過ごし、佐官から最後は将官にまで昇進した。退役する年齢を過ぎた後も余人に変え難しということで規則を曲げて再任官されたくらいである。彼女が晩年に残した講演では、ユーモアあふれる語り口ながら「これは今までのやり方と違う、というようなことを口にしたら、空間転移してとりつくぞ」とか「許可を得ようとするよりは謝る方が簡単だから、まずはとにかくやってみよ」というような警句を多く残した。今までのやり方が正しいわけではない、ということを示すために、反対に回る時計を時折人に見せたりもしていた。

最後まで自分の仕事そして軍人としての在り方に誇りを持っていたという点でも、多くの人に影響を与えた人であった。

次回掲載予定は2024年8月上旬頃→公開しました(こちら

著者:大島芳樹
東京工業大学情報科学科卒、同大学数理・計算科学専攻博士。Walt Disney Imagineering R&D、Twin Sun社、Viewpoints Research Instituteなどを経て、現在はCroquet Corporationで活躍中。アラン・ケイ博士と20年以上に渡ってともに研究・開発を行い、教育システムをはじめとして対話的なアプリケーションを生み出してきた。2021年9月に株式会社京都テキストラボのアドバイザーに就任。2022年8月より静岡大学客員教授。