1. HOME
  2. ブログ
  3. ITエンタメ
  4. 高水準言語『FORTRAN』を開発したジョン・バッカス氏
高水準プログラミング言語『FORTRAN』を開発したジョン・バッカス氏

高水準言語『FORTRAN』を開発したジョン・バッカス氏

最初期の高水準言語と評される「FORTRAN」

ミツオカミツオカ
師匠が若かったころは「COBOL」で開発してたって言ってましたよね?
にゃんこ師匠にゃんこ師匠
前回「おばあちゃん言語」として紹介したやつな!
ミツオカミツオカ
そのとき、IBMの「FORTRAN」と並ぶ最初期の高水準言語って言ってましたけど、「FORTRAN」ってどんな言語なんですか?
にゃんこ師匠にゃんこ師匠
FORTRAN は1957年に完成した言語じゃから、実は、1959年完成の COBOL よりも古い言語なんじゃ
ミツオカミツオカ
さらに年上なんですね!
FORTRAN も教えろください~!
にゃんこ師匠にゃんこ師匠
うむ!
では、FORTRAN の開発者として知られるジョン・バッカス氏について解説していこうかのお!

挑戦・挫折を繰り返したジョン・バッカス氏

挑戦・挫折を繰り返したジョン・バッカス氏

ジョン・バッカス氏は、本名を「ジョン・ワーナー・バッカス」と言います。

1924年にアメリカのペンシルベニア州フィラデルフィアで生まれ、デラウェア州ウィルミントンで育ちました。

バッカス氏が生まれた1924年は、日本では昭和の時代になる直前の大正13年で関東大震災の翌年になります。

アメリカでは、日本人の移民を禁じる移民法が制定された年でもあります。

学生時代からたくさんの挑戦と挫折を繰り返していた

ジョン・バッカス氏は、学生時代はペンシルベニア州ポッツタウンにあるヒルスクールで学びましたが、学習態度は勤勉とは言えませんでした。

大学は、化学の研究者を目指してバージニア大学に入学しますが、講義内容が合わないと欠席しまくってしまったために1年もたたずに除籍となってしまいました。

その後、徴兵によってアメリカ陸軍に入隊し、入隊中にはピッツバーグ大学で工学を学んだり、ハバフォード大学で医療を学んだり…

さらには、1945年にニューヨークの医学校に入学するものの、医学は向いていないと考えてわずか9ヶ月で自主退学します。

いろいろな分野に挑戦しながらも、挫折を繰り返した学生時代だったんです。

にゃんこ師匠にゃんこ師匠
ちなみに病院でのインターンシップ中には、頭蓋骨の腫瘍が見つかって頭にプレートを入れる手術などもしておる…
ミツオカミツオカ
ある意味、病院でのインターンシップ中で早期発見で良かったとも言えますね…

ラジオ技術者の訓練で数学に目覚めて修士号を取得

バッカス氏は、医学校を中退した後はニューヨーク市に移り住み、ラジオ技術者としての訓練を受けます。

ラジオ技術の訓練を受けて行く中で数学に興味を持ち、自分には数学が向いているのではないかと気づき始めます。

急に目覚めた数学への興味そのままにコロンビア大学の数学科で学び、1949年には数学の修士号を取得してしまいます。

医療の道が向いていないと、ニューヨークの医学校を中退してからわずか3年ほどの出来事でした。

にゃんこ師匠にゃんこ師匠
コロンビア大学で数学の修士号を取得したバッカス氏は、1950年にIBMに入社するんじゃ!
ミツオカミツオカ
1924年生まれなので、20代半ばのでの入社ですね
にゃんこ師匠にゃんこ師匠
そこで、SSEC(Selective Sequence Electronic Calculator)というIBMが開発した電気機械式計算機を使った仕事をすることになるんじゃが、そこが人生のターニングポイントになるんじゃ
ミツオカミツオカ
ワクワク…

IBMでの最初の仕事でプログラミング言語「Speedcoding」を開発

IBMでの最初の仕事でプログラミング言語「Speedcoding」を開発

IBMに入社したバッカス氏が最初に取り組んだ仕事は、電気機械式計算機SSECを使って月の位置を計算する仕事でした。

月の位置を計算するにあたり、入社して3年後の1953年にバッカス氏は「Speedcoding」というプログラミング言語を開発します。

「Speedcoding」は、IBMのコンピュータで初の高水準プログラミング言語で、浮動小数点数を使用した計算をサポートするためのものでした。

当時、天文学の位置計算にはIBM701のコンピュータを使用していましたが、Speedcoding によって多くの手間を削減することに成功して実行時間が10倍から20倍にもなったのです…!!

ミツオカミツオカ
Speedcoding ってすごい言語だったんですね!
にゃんこ師匠にゃんこ師匠
ただ、それでもSpeedcoding はまだ機械語の域を出ていなかったんじゃ…
ミツオカミツオカ
機械語って1と0だけで書かれた2進法のやつですか?
にゃんこ師匠にゃんこ師匠
そうじゃ!
1と0がズラ~ッと並んでいるやつじゃ!
ミツオカミツオカ
ああ…
まだまだ難易度高めですね…

高水準プログラミング言語「FORTRAN」を開発

高水準プログラミング言語「FORTRAN」を開発

Speedcoding はまだ機械語でありプログラミングが難しいことから、1954年にバッカスは10人のチームを結成して「FORTRAN」の設計と開発をスタートさせました。

FORTRANはIBM704コンピュータのためのプログラミング言語で、機械語ではなく英単語や記号を使って誰でも簡単にプログラミングできることを目指しました。

バッカス氏がFORTRANをわざわざチームを組んでまで開発しようとしたのは、バッカス氏自身が「プログラムを書くのが嫌いだったから」だそうです。

ミツオカミツオカ
ちなみに「FORTRAN」ってどういう意味なんですか?
にゃんこ師匠にゃんこ師匠
Formula Translating System」から名づけたそうじゃ。
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 の開発の功績で1977年にチューリング賞を受賞しておるぞ
ミツオカミツオカ
世界のプログラミングが、機械語から高水準言語へと変わることに大きく貢献したってことですね

バッカス・ナウア記法を考案してプログラミング言語にさらに貢献する

バッカス・ナウア記法を考案してプログラミング言語にさらに貢献する

ジョン・バッカス氏の大きな功績は、FORTRAN だけではありません。

1959年には、バッカス・ナウア記法 (BNF) を考案しました。

バッカス氏が発案したのちに、デンマークのコンピュータ科学者であるピーター・ナウア氏が修正したことで、「バッカス・ナウア記法」と名づけられました。

バッカス・ナウア記法は、コンピュータのプログラミング言語を定義するのに用いられるメタ言語です。

現在は、バッカス・ナウア記法を拡張したEBNF (Extended BNF) が一般的に使われており、プロトコル規定言語の ASN.1 や XMLの構文定義にも利用されているほどです。

FORTRANT と同じく、現在のプログラミング言語に大きな影響を与えました。

FORTRANやバッカス・ナウア記法の功績で高い評価を受け続ける

1950年代に IBM で FORTRAN とバッカス・ナウア記法を開発し、プログラミングの進展に大きな貢献をしたバッカス氏は、その功績によってたくさんの高い評価を受けています。

1963年には入社した IBM で IBMフェローの役職に任命され、1970年代に入ると1975年のアメリカ国家科学賞や1977年のチューリング賞など権威ある賞を受賞します。

さらに、1997年にはアメリカのカリフォルニア州にあるコンピュータ歴史博物館で「コンピュータの殿堂」として顕彰・展示されました。

にゃんこ師匠にゃんこ師匠
ちなみに、1987年に世界で初めて「コンピュータの殿堂入り」を果たしたのがグレース・ホッパー氏なんじゃ
ミツオカミツオカ
「COBOL」を開発した、コンピュータおばあちゃんですね!
にゃんこ師匠にゃんこ師匠
そうじゃ!
しかも、今までにコンピュータの殿堂入りを果たした人物は100人もいないんじゃぞ!
ミツオカミツオカ
それだけの名誉を認められた人物の1人がバッカス氏なんてスゴイ…!!

晩年は家族と老いについての葛藤とともに亡くなった

晩年は家族と老いについての葛藤とともに亡くなった

1990年代に入ると、バッカス氏は1991年にずっと勤め上げた IBM から引退して隠居生活となります。

引退してもなお、若い技術者を自宅に招いて議論をかわすなど、プログラミングとは関わりを持ち続けます。

1993年にはチャールズ・スターク・ドレイパー賞を授与されるなど、バッカス氏の偉業への高い評価が尽きることはありませんでした。

ただ、プログラミングでの輝かしい功績や活躍とは裏腹に、プライベートはあまり恵まれてはいなかったのです。

プライベートを犠牲にした人生

仕事に没頭し過ぎたためか家庭を顧みることはほとんどなく、FORTRANやバッカス・ナウア記法を開発してIBMフェローとなったのちの1966年に妻と離婚しています。

妻との間には2人の娘がいましたが、娘たちが父親の姿を見たのは週末か休日のみだったと言います。

その後に再婚しますが、2004年の80歳の年に再婚相手の妻を亡くしてしまいます。

再婚相手の妻を亡くしてからは、「家族のことをもっと知りたい」と考えるようになり、娘と孫娘がいるオレゴン州アシュランドに移り住みます。

愛犬と毎朝一緒に散歩する生活でしたが、プログラミングの世界に没頭し続けてきたバッカス氏は地域社会にはあまり馴染めず晩年を過ごしました。

娘によると、晩年のバッカス氏は「老いていき、脳が働かなくなっていく自分の姿」に苦しんでいたと言います。

高水準プログラム「FORTRAN」を開発してプログラミングの世界を変えた偉人は、晩年になって家族や人との交流の価値に気づき、老いていく自分に葛藤しながら日々を過ごし、2007年3月17日にオレゴン州アシュランドで82歳で死去しました。

語り継がれる偉業

亡くなってからも小惑星にバッカス氏の名前がつけられるなど、偉業への評価は死後も続いています。

「わたしの成果の大半は、わたしが怠け者であることから生まれた」「⁠イノベーションはトライアル&エラーの繰り返し」などの言葉も、技術者への名言として今も語り継がれています。

ジョン・バッカス氏の名前と偉業は、多くのプログラムや人々の記憶の中に残り続けているのです。

ミツオカミツオカ
若い頃のたくさんの挑戦と挫折、その後の素晴らしすぎる偉業、そして葛藤の晩年…
波乱万丈の人生だったんですね
にゃんこ師匠にゃんこ師匠
そうじゃな…。
ただ、この波乱万丈の人生の中で創り出された FORTRAN は、スーパーコンピュータなど数値計算の分野で今でも現役で活躍しておるんじゃ!
ミツオカミツオカ
作った人が亡くなっても、そこから60年以上も活躍し続けているなんてすごい!
にゃんこ師匠にゃんこ師匠
ミツオカも後世に何か残るものを作り出せたらいいな!
ミツオカミツオカ
はい、そう思ってましたあぁぁ!!🔥🔥
にゃんこ師匠にゃんこ師匠
(あ…、いつものなにもやらずに終わるやつじゃな…)
ミツオカミツオカ
自分に何が合ってるのかいろいろなことを試してみなくっちゃ!!
まずは昨日の韓ドラの続き観て寝よ!
にゃんこ師匠にゃんこ師匠
それな!!
いつものミツオカで安心する!

書いた人はこんな人

もも(メディア部)
もも(メディア部)
「好きなことを仕事にするエンジニア集団」の(株)ライトコードです!
ライトコードは、福岡、東京、大阪の3拠点で事業展開するIT企業です。
現在は、国内を代表する大手IT企業を取引先にもち、ITシステムの受託事業が中心。
いずれも直取引で、月間PV数1億を超えるWebサービスのシステム開発・運営、インフラの構築・運用に携わっています。

システム開発依頼・お見積もり大歓迎!
また、WEBエンジニアとモバイルエンジニアも積極採用中です!

ご応募をお待ちしております!

関連記事

採用情報

\ あの有名サービスに参画!? /

バックエンドエンジニア

\ クリエイティブの最前線 /

フロントエンドエンジニア

\ 世界を変える…! /

Androidエンジニア

\ みんなが使うアプリを創る /

iOSエンジニア