最初期の高水準言語と評される「FORTRAN」
FORTRAN も教えろください~!
では、FORTRAN の開発者として知られるジョン・バッカス氏について解説していこうかのお!
挑戦・挫折を繰り返したジョン・バッカス氏
ジョン・バッカス氏は、本名を「ジョン・ワーナー・バッカス」と言います。
1924年にアメリカのペンシルベニア州フィラデルフィアで生まれ、デラウェア州ウィルミントンで育ちました。
バッカス氏が生まれた1924年は、日本では昭和の時代になる直前の大正13年で関東大震災の翌年になります。
アメリカでは、日本人の移民を禁じる移民法が制定された年でもあります。
学生時代からたくさんの挑戦と挫折を繰り返していた
ジョン・バッカス氏は、学生時代はペンシルベニア州ポッツタウンにあるヒルスクールで学びましたが、学習態度は勤勉とは言えませんでした。
大学は、化学の研究者を目指してバージニア大学に入学しますが、講義内容が合わないと欠席しまくってしまったために1年もたたずに除籍となってしまいました。
その後、徴兵によってアメリカ陸軍に入隊し、入隊中にはピッツバーグ大学で工学を学んだり、ハバフォード大学で医療を学んだり…
さらには、1945年にニューヨークの医学校に入学するものの、医学は向いていないと考えてわずか9ヶ月で自主退学します。
いろいろな分野に挑戦しながらも、挫折を繰り返した学生時代だったんです。
ラジオ技術者の訓練で数学に目覚めて修士号を取得
バッカス氏は、医学校を中退した後はニューヨーク市に移り住み、ラジオ技術者としての訓練を受けます。
ラジオ技術の訓練を受けて行く中で数学に興味を持ち、自分には数学が向いているのではないかと気づき始めます。
急に目覚めた数学への興味そのままにコロンビア大学の数学科で学び、1949年には数学の修士号を取得してしまいます。
医療の道が向いていないと、ニューヨークの医学校を中退してからわずか3年ほどの出来事でした。
IBMに入社したバッカス氏が最初に取り組んだ仕事は、電気機械式計算機SSECを使って月の位置を計算する仕事でした。
月の位置を計算するにあたり、入社して3年後の1953年にバッカス氏は「Speedcoding」というプログラミング言語を開発します。
「Speedcoding」は、IBMのコンピュータで初の高水準プログラミング言語で、浮動小数点数を使用した計算をサポートするためのものでした。
当時、天文学の位置計算にはIBM701のコンピュータを使用していましたが、Speedcoding によって多くの手間を削減することに成功して実行時間が10倍から20倍にもなったのです…!!
1と0がズラ~ッと並んでいるやつじゃ!
まだまだ難易度高めですね…
高水準プログラミング言語「FORTRAN」を開発
Speedcoding はまだ機械語でありプログラミングが難しいことから、1954年にバッカスは10人のチームを結成して「FORTRAN」の設計と開発をスタートさせました。
FORTRANはIBM704コンピュータのためのプログラミング言語で、機械語ではなく英単語や記号を使って誰でも簡単にプログラミングできることを目指しました。
バッカス氏がFORTRANをわざわざチームを組んでまで開発しようとしたのは、バッカス氏自身が「プログラムを書くのが嫌いだったから」だそうです。
1954年にIBMに提出した企画書の段階で、すでに決められていたそうじゃぞ
バラエティに富んだメンバーたちを採用してチームを組む
「人間に近い言葉で、楽に速くプログラミングをしたい」という思いで組んだ開発チームは、バッカス氏が自らメンバーを採用しました。
1954年にFORTRANの原案に当たる企画書を上司に提出し、企画が承認されるとすぐに開発チームが結成されました。
最終的に10人になったチームのメンバーたちは、とてもバラエティに富んだ人たちで構成されていたのです。
結晶学者、チェスの名人、暗号の専門家・・・
年齢も関係なく、大学を卒業したばかりの若い女性までいました。
年齢や専門や学歴などにとらわれず、優秀だと思った人や貢献してくれると思った人をバッカス氏が積極的に採用して、各個人に活躍できる仕事を任せたんです。
バッカス氏の期待がこもった「TEAM FORTRAN」のメンバーたちは、1日中ずっとオフィスで仕事にのめり込んでおり、社内でもかなり浮いた存在だったそうです。
最初は半年の予定だったのに、気がつけば3年もFORTRANの開発に費やしていました…
1957年にFORTRANが完成して世界に高水準言語が広まる
バッカス氏がチームを組んで開発を始めたプログラミング言語の FORTRAN は、3年後の1957年についに完成します。
1957年2月に、ロサンゼルスにて大勢の顧客を前にして FORTRAN のデモを行いました。
当時の主流言語だったアセンブリ言語と数値計算の対決をしたところ、命令数が削減されて高速化がなされている高水準言語のFORTRANの圧勝という結果でした。
観客たちは、FORTRAN の圧勝ぶりに息をのんだと言います。
IBM704 のために開発されたプログラミング言語「FORTRAN」の完成によって、IBMコンピュータの普及につながりました。
さらに、計算機科学や数学など膨大な計算が必要な分野に FORTRAN が使われるようになり、高水準言語がプログラミングで採用される大きなきっかけとなったんです。
バッカス・ナウア記法を考案してプログラミング言語にさらに貢献する
ジョン・バッカス氏の大きな功績は、FORTRAN だけではありません。
1959年には、バッカス・ナウア記法 (BNF) を考案しました。
バッカス氏が発案したのちに、デンマークのコンピュータ科学者であるピーター・ナウア氏が修正したことで、「バッカス・ナウア記法」と名づけられました。
バッカス・ナウア記法は、コンピュータのプログラミング言語を定義するのに用いられるメタ言語です。
現在は、バッカス・ナウア記法を拡張したEBNF (Extended BNF) が一般的に使われており、プロトコル規定言語の ASN.1 や XMLの構文定義にも利用されているほどです。
FORTRANT と同じく、現在のプログラミング言語に大きな影響を与えました。
FORTRANやバッカス・ナウア記法の功績で高い評価を受け続ける
1950年代に IBM で FORTRAN とバッカス・ナウア記法を開発し、プログラミングの進展に大きな貢献をしたバッカス氏は、その功績によってたくさんの高い評価を受けています。
1963年には入社した IBM で IBMフェローの役職に任命され、1970年代に入ると1975年のアメリカ国家科学賞や1977年のチューリング賞など権威ある賞を受賞します。
さらに、1997年にはアメリカのカリフォルニア州にあるコンピュータ歴史博物館で「コンピュータの殿堂」として顕彰・展示されました。
しかも、今までにコンピュータの殿堂入りを果たした人物は100人もいないんじゃぞ!
晩年は家族と老いについての葛藤とともに亡くなった
1990年代に入ると、バッカス氏は1991年にずっと勤め上げた IBM から引退して隠居生活となります。
引退してもなお、若い技術者を自宅に招いて議論をかわすなど、プログラミングとは関わりを持ち続けます。
1993年にはチャールズ・スターク・ドレイパー賞を授与されるなど、バッカス氏の偉業への高い評価が尽きることはありませんでした。
ただ、プログラミングでの輝かしい功績や活躍とは裏腹に、プライベートはあまり恵まれてはいなかったのです。
プライベートを犠牲にした人生
仕事に没頭し過ぎたためか家庭を顧みることはほとんどなく、FORTRANやバッカス・ナウア記法を開発してIBMフェローとなったのちの1966年に妻と離婚しています。
妻との間には2人の娘がいましたが、娘たちが父親の姿を見たのは週末か休日のみだったと言います。
その後に再婚しますが、2004年の80歳の年に再婚相手の妻を亡くしてしまいます。
再婚相手の妻を亡くしてからは、「家族のことをもっと知りたい」と考えるようになり、娘と孫娘がいるオレゴン州アシュランドに移り住みます。
愛犬と毎朝一緒に散歩する生活でしたが、プログラミングの世界に没頭し続けてきたバッカス氏は地域社会にはあまり馴染めず晩年を過ごしました。
娘によると、晩年のバッカス氏は「老いていき、脳が働かなくなっていく自分の姿」に苦しんでいたと言います。
高水準プログラム「FORTRAN」を開発してプログラミングの世界を変えた偉人は、晩年になって家族や人との交流の価値に気づき、老いていく自分に葛藤しながら日々を過ごし、2007年3月17日にオレゴン州アシュランドで82歳で死去しました。
語り継がれる偉業
亡くなってからも小惑星にバッカス氏の名前がつけられるなど、偉業への評価は死後も続いています。
「わたしの成果の大半は、わたしが怠け者であることから生まれた」「イノベーションはトライアル&エラーの繰り返し」などの言葉も、技術者への名言として今も語り継がれています。
ジョン・バッカス氏の名前と偉業は、多くのプログラムや人々の記憶の中に残り続けているのです。
波乱万丈の人生だったんですね
ただ、この波乱万丈の人生の中で創り出された FORTRAN は、スーパーコンピュータなど数値計算の分野で今でも現役で活躍しておるんじゃ!
まずは昨日の韓ドラの続き観て寝よ!
いつものミツオカで安心する!