1. HOME
  2. ブログ
  3. ITエンタメ
  4. デニス・リッチーはなぜ、C言語を作ったのか?

デニス・リッチーはなぜ、C言語を作ったのか?

C言語は、誰が何のために作ったの?

現在使用されているプログラミング言語の中にも、C言語がベースになっているものが数多くあります。

この大元となった「C言語」とは、一体いつ誰が作ったものなのでしょうか?

今回は、知ってるようで知らない、C言語の開発までのお話をご紹介します。

C言語の誕生のきっかけはUNIXから始まる

Windowsやmac OSも有名ですが、UNIX(ユニックス)というOSの存在も忘れてはいけませんね。

実は、この「UNIXの開発」「C言語の開発」には、ある人物がかかわっています。

失敗から多くを学んで誕生したUNIX

まずは、UNIX誕生についてを知っておきましょう。

当時、Multicsプロジェクトというものが立ち上げられます。

これは、高性能なOS開発を目標とした、ベル研究所ゼネラルエレクロトニック社、そして、マサチューセッツ工科大学の共同プロジェクトでした。

しかし、1969年に、プロジェクトからベル研究所が手を引くこととなり、プロジェクトは中止されてしまいます。

そこで、ベル研究所にいたデニス・リッチーという人物が、Multicsプロジェクトの失敗を活かして現実的なOS開発に乗り出すことにしました。

UNIX開発のきっかけはゲームがしたかったため?

【Space Travelというビデオゲーム】

UNIX開発前に使用していたコンピューターは、PDP-7という機種が使用されていました。

1965年に販売されたモデルなので、すでに型遅れでした。

そんなコンピューターを使用していた彼らですが、「Space Travel」というゲームをなんとかPDP-7で動かしたいと考えます。

しかし、モデルが古いためにゲームを動かすことはできません。

そこで、デニス・リッチーが「実用的なOSがあれば動くだろう」と開発したのがUNIXでした。

ゲームのために「UNIX」を開発したというのは、何とも面白いお話ですね。

そして、同じ研究所にいたケン・トンプソンという人物の協力も得ながら、共同で「UNIX」を作り始めたのです。

UNIXの移行を簡単に行うためにC言語は生まれた

【PDP-11で作業しているケン・トンプソン (座っている人物)とデニス・リッチー】

引用:Wikipedia

UNIXが開発された当初は、アセンブリ語でプログラミングされていました。

アセンブリ語とは、機械語よりも少し意味がわかりやすい形に書かれたプログラミング言語です。

プログラミング言語はある程度、英語の意味と共通するものが多いですが、アセンブリ語は全く英語の要素はありません。

そこで、少しでも簡単にUNIXを他のコンピューターに移植できるように開発されたのがC言語だったのです。

デニス・リッチーによってB言語を元に作られたC言語

アセンブリ語では移植が難しいことを悟ったデニス・リッチーが目をつけたのは「B言語」でした。

UNIX開発にも携わっていたケン・トンプソンがB言語を開発したのですが、実行速度が遅かったのです。

そこで、B言語の実行速度を上げるために開発されたものがC言語ということです。

開発でのコンセプトは作業効率を上げるためですから、実行速度を早くすることも大切な目的だったわけですね。

C言語とC言語版UNIXの完成

【ケン・トンプソン(左)とデニス・リッチー(右)】

そして、ついに、C言語が1972年に誕生しました。

さらに、1973年には、C言語版のUNIXが開発されました。

この時点で、「簡単にUNIXを移植する」という目的が達成されました。

C言語は、その後、世界中に広まり「C++」「C#」「opjectiveC」「javascript」など、多くのプログラミング言語の基礎となります。

C言語を開発したデニス・リッチーは、IT業界に多大なる影響を及ぼした人物でもあるのです。

デニス・リッチーとスティーブ・ジョブズ

引用:wikipedia

UNIXとC言語のメイン開発者だったデニス・リッチーの最後は、2011年、心血管疾患と前立腺癌の長い闘病生活の末に訪れました。

その死は、Apple創業者であるスティーブ・ジョブズの死から一週間後です。

実は、Apple製品のmac OSやiPhoneのiOSもUNIXが元となっています。

また、mac OSやiPhoneのアプリについても、C言語を元にしたObjective-Cから構成されています。

この2人の死は、何か運命的なものさえ感じてしまうから不思議です。

C言語は、現代の私たちの生活を支える基礎

1970年代前半のプログラミングは、まだ機械語に近い形で作業されていました。

しかし、C言語以降の現在、プログラミングがどれだけ楽になっているか、エンジニアの方であれば分かりますよね。

現在、デニス・リッチーが、開発したC言語はスマートフォンアプリなどのプログラミング言語の元となり、現代の私たちの生活を支える基礎となっています。

後に、デニス・リッチーはこう言っています。

「C言語がこれほど世界に広まるとは思っていなかった」

彼は、お金を儲けるためにC言語を作ったのではありません。

「少しでも便利にコンピューターが使用できるように」という純粋な想いが、このような大きな功績となったのでした。

ライトコードよりお知らせ

にゃんこ師匠にゃんこ師匠
システム開発のご相談やご依頼はこちら
ミツオカミツオカ
ライトコードの採用募集はこちら
にゃんこ師匠にゃんこ師匠
社長と一杯飲みながらお話してみたい方はこちら
ミツオカミツオカ
フリーランスエンジニア様の募集はこちら
にゃんこ師匠にゃんこ師匠
その他、お問い合わせはこちら
ミツオカミツオカ
   
お気軽にお問い合わせください!せっかくなので、別の記事もぜひ読んでいって下さいね!

一緒に働いてくれる仲間を募集しております!

ライトコードでは、仲間を募集しております!

当社のモットーは「好きなことを仕事にするエンジニア集団」「エンジニアによるエンジニアのための会社」。エンジニアであるあなたの「やってみたいこと」を全力で応援する会社です。

また、ライトコードは現在、急成長中!だからこそ、あなたにお任せしたいやりがいのあるお仕事は沢山あります。「コアメンバー」として活躍してくれる、あなたからのご応募をお待ちしております!

なお、ご応募の前に、「話しだけ聞いてみたい」「社内の雰囲気を知りたい」という方はこちらをご覧ください。

ライトコードでは一緒に働いていただける方を募集しております!

採用情報はこちら

関連記事