表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
93/140

第92話 プログラミング言語論争

「さて、今日は皆の好きなプログラミング言語について語ってもらおう」


 編集部の部室で、いつものように(しゅん)さんが言う。今回はさすがに思いつきではなくて、「プログラミング言語を紹介する」という企画のために、部員にアンケートを取るという意味がある。


「じゃ、まず俺だが、C++だな」

「よく使ってますよね。なんでです?」


 俊さんはC++を好んで使うけど、理由をちゃんと聞いたことはなかった。


「一に速度。二にハードウェアへのアクセスのしやすさ。あと、安定した性能だな」


 なるほど。しかし、安定した性能か。


「安定した性能というのは?」

「最近の言語だと、だいたいGC(ガベージコレクション)があるだろ」

「そうですね。無い方が少ないくらいです」

「GCは悪くないんだが、GCのStop The World(STW)が起こるのがちょっとな」


 GCが走る時は、プログラムが一時停止することが多い。その時に性能が落ち込むのを嫌ったようだ。


「俺はPythonですね。記事が多いですし、ライブラリが充実してますから」


 最近のAIブームでPythonの人気が出ているのとは別に、使いやすい。


「でも、Pythonのインデント文法ってめんどくさくない?」

「それに、Python 2とPython 3で互換性なくなってるし」


 他の部員が異論を出す。


「最近は、Python 3にほとんど移行できてますよ」


 Pythonは長らく、バージョン2系とバージョン3系が共存していた。

 それが混乱の元だったが、最近ようやくほぼ統一された。


「私はRustかな」


 ミユの発言。


「最近、Rustよく使ってるよな」

「うん。俊先輩に近い理由だけど、Rustは早いし、GCがないし、安全だし」

「でも、Rustは学習コストが高いって聞くけど」

「否定しないけど、一度わかってしまえば楽だよ」


 なるほどなあ。俺もちょっと手を出してみるか。


「私はJavaScriptかな」


 女性部員さんが言う。


「ほとんどのところで動きますもんね」


 JavaScriptのいいところは、とにかくほとんどの環境で動くというところだ。専用のアプリがなくても、ブラウザがあればJavaScriptのプログラムを動かせる。


「それと、小物の便利ツールが揃ってるのもいいよ」

「ああ、確かに。npmで色々入れられるのはいいですよね」


 JavaScriptは元々、ブラウザで動く言語だったが、最近はNode.jsという形で、ブラウザに依存しない形で動かすこともできる。


「さすがにJavaScriptはねえだろ。言語仕様がひどすぎる」


 カズさんが割り込んでくる。


「カズさんの言うこともわかりますけどね。長い物にはまかれろって言いますよね」


 女性部員さんが言い返す。


「それはわかるんだが、どうにもなあ……」


 微妙な物言いだ。JavaScriptはシェアは凄いものの、嫌いな人も多い。


「僕はJavaかな」


 別の男性部員さんが言う。


「やっぱり、長年の歴史があるし、早いし、移植性が高いし」


 移植性というのは、Javaプログラムを変換したものは、どのマシンでもOSでも同じように動くことを指す。


「俺はGoだな」


 また別の男性部員さんが発言する。


「Goですか?記述が冗長じゃないですか?」


 前に触ったことがあるが、とにかく無駄な記述を強いられるという印象だ。


「それは認めるけど、とにかく速いからね」

「でも、C++程じゃないですよね」

「そこまで必要じゃないけど、高速なプログラム書きたい時に重宝するよ」

「なるほど。わかりますけど……」


 しかし、それなら、Javaの方がいい気がするんだよな。


「俺はScalaだな」

「JVM言語ですね。あれっていいんですか?」


 最近名前を聞くが、あんまり調べていない。


「Javaに比べて半分以下のコード量で済むからな。もうJavaには戻れないわ」


 そんな事を言ったことに、


「Scalaって互換性低いだろ。Javaはそんなことないよ?」

「Scalaだって最近は改善されてきてる」

「それでも、まだまででしょ」


 なんて、議論がだんだんヒートアップしてる。


「Javaなんかゴミだろ」


 そこに火をつけるカズさんの発言。


「ゴミってなんですか、カズさん」

「事実だろ。あんなにくっそ冗長な記述なんてやってられるかよ」

「じゃあ、カズさんは何がいいんですか?」

「俺はHaskellだな」

「そんなマイナー言語、皆使ってないじゃないですか」

「は?Haskellは金融システムで使われてるぞ」

「それ言ったら、Javaはもっと使われてますよ」


 どんどんヒートアップしていく議論。


「とりあえず、カズも皆も落ち着け」


 ヒートアップしているのを宥める俊さん。


「優劣論争しても不毛だから、とりあえず好きな言語の記事を書こう」


 確かに、記事を書くのが目的なことを忘れていた。


「というわけで、好きな言語の記事を書くように」

「好きな言語がかぶったときは?」


 結構ありそうなことだが。


「その時は別々に書けばいい」

「なるほど」

 

 まあ、それが妥当か。しかし、結構骨が折れそうな作業だ。


「ミユはRustか。結構大変そうだよな」

「そうでもないよ?最近は本も出てるし」

「そうなのか」

「まだ2冊くらいだけどね」

「やっぱ、まだそれくらいか」

「まだまだこれからの言語だから。でも、最近は人気出てきてるし」


 そういえば、RustをMicrosoftが採用って話を見た覚えがある。


(しかし、言語の話になると、話が拗れるって本当だったんだな)


 普段は険悪になることが少ない編集部がこうなるとは。

 言語論争は恐ろしい。 

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ