コード最速理論とプログラミング言語VX(仮)その1 | サンロフトの本とテレビの部屋

コード最速理論とプログラミング言語VX(仮)その1

●コード最速理論
頭文字Dの高橋涼介の公道最速理論を意識しつつ、プログラミングにおけるコード最速理論を考えている。


先日、最も人気のあるプログラミング言語がC言語だという結果が出て、いささか驚いた。C言語ブームが起こったのは、かれこれ30年前。パソコンでFDDが普及し始め、8ビットパソコンでCP/Mを使うのが珍しくなくなった時期の話。その後、JavaScriptがブームになり、現代はRuby、Python、PHPといった軽量言語が話題の中心である。


しかし、『日経コンピュータ』2012年9月27日号の特集『次の主流は 「関数型」 覆る言語選定の常識 Javaはもう古い』を読んで、考えが変わった。JavaScriptはC言語の2倍程度遅く、軽量言語は10倍程度遅いことが分かったからだ。軽量言語の「軽量」とは、処理が軽いのではなくプログラマの負担が軽いという意味だったのである。


最適なプログラミング言語は用途によって異なるし、PCが超高速化した現代では速度を要求される局面は限られる。とはいえ、アセンブラ(マシン語)を除けばC言語が最速という状況は30年前と変わっていない。速いか遅いかはコンパイラの性能によるが、プログラミング言語の種類によって概ね決まってくる。


C言語の文法はアセンブラに比べればBASICに近く、制約の無さや機能の高さはBASICを超える。昔の我々にとってC言語の壁は関数でもポインタでもなく、コンパイルの手間と時間と値段の高さであった。Microsoft Cは24万8000円。現在の価値でざっと50万円だ。
それが今、Microsoft Visual Studioは無料!!(有料版もある)。ググればダウンロードサイトがすぐ見つかるだろう。もちろん違法サイトではない。マイクロソフトが公式に無償公開しているのだ。
昨年の話だが、これをインストールし、某フリーウェアのソースを自分でビルドしてみた。昔のX68000のXC等に比べるとやや面倒だが、手順は決して難しくない。
軽量言語の文法はC言語によく似ており、速いのならC言語の方がいいように思う。私自身、C言語を使っていたせいもある。


C言語ブームから30年経ち様々なトレンドがあったが、今日のWeb上の集計ではC言語への関心が最も高いという。C言語の文法が多くの言語に通じるせいか、コード最速を目指すとC言語にたどり着くからなのか?