kmizuの日記

プログラミングや形式言語に関係のあることを書いたり書かなかったり。

書評:プログラミング言語大全

プログラミング言語大全

プログラミング言語大全

  • 作者:クジラ飛行机
  • 発売日: 2020/04/18
  • メディア: 単行本(ソフトカバー)
   技術評論社の編集さんから、「プログラミング言語に詳しい人」枠でなんだか献本いただきました。ただ、タイトルを見た時点でそこはかとなく不安があったので、記述がひどいぽかったら書評は書かないでおこうと思いましたが、ぱらぱらと読んで、よく調べて書かれた書籍だと思ったので、ご紹介したいと思います。

 この書籍は、日本語プログラミング言語「なでしこ」や「ひまわり」の作者として知られているクジラ飛行机さんが、世の中に数多あるプログラミング言語の中で、(比較的)知られているものについて、

 といった側面から紹介するといった趣です。

オススメしない読者

 初めにこれを書くのはどうかと思ったのですが、読む必要がない人は確かにいるかなと思いましたので。

 まず、日頃から言語の公式ページとかあさって、どんなプログラミング言語があってどういう特徴があるかなどについて調べている人には、あまりオススメしません。特に、個々の言語の特徴についてもうちょっと突っ込んだ解説が欲しい!という人は不満に思う可能性があります。ぶっちゃけ言語マニアの人はあんまり読まなくてもいいです。

 あとは、型推論とか静的型とかに関してこだわりがある人は、「その型推論の紹介の仕方はどうなのよ」とか思ってしまいそうな部分があるので、ご注意ください(特に、静的型を型注釈ありきで語っている部分については、それどうなのと思う人が居そう)。Lisp系言語の扱いについても、一部もにょる人がいそうなのでご注意。

 また「容易度」「将来性」「普及度」「保守性」「中毒性」に関しては、著者の方の主観とはいえ、色々異論がある人も多いと思うので、そのへんは流して読むのが吉かなと。

オススメする読者

 普段、2〜3くらいのプログラミング言語は使えるけど、他にどんな世界があるのかをよく知らないとか、それぞれの言語の歴史や豆知識を仕入れたい人にオススメです。言語を多く知っていれば偉いというものではないですが、自分がまだ知らないけどこんなに色々なプログラミング言語があって、それぞれ違う利用シーンがあるんだ、ということを知ることができるのは意義があることだと信じています(特に、利用シーンについては、案外知っている人しか知らない事も書かれているので、参考になることも多いかと思います)。

 あとは、もっと多くのプログラミング言語を利用したことがあっても、最近どんな言語があるのかなーとかいうのが追えていない方にとっても、2010年代以降に登場した新しい言語が多数紹介されているので買う価値があるのではないかと思います。

 特に、今20台くらいの方だとあんまり知らないのではないかなという言語も数多く紹介されていましたので、色々な言語を知りたい若い人にもオススメできるかなと思います。

個人的に良かった点

 プログラミング言語を色々紹介するということで、Wikipedia日本語版みたいな中途半端な記述や、へんてこな記述がないかというのを危惧していましたが、ごく細かい部分を除いて、技術的な誤りはほとんどありませんでしたし、言語の歴史や利用シーン、特徴などについてもおおむね適切かと思います。

 コラムでは、普段、本では紹介されないような言語の側面にもスポットを当てており、参考になりました。

 また、技術的な誤りがないように、かなり細部に渡ってチェックされた形跡があります。たとえば、Javaについてクラスベースのオブジェクト指向を採用したと書かれていたり、「インタプリタは1行ずつ実行するのか」というコラムでは「インタプリタ型言語とされる言語において、プログラムと一行ずつ実行する処理系は現在メジャーではないからです」などという記述があったりという具合です。重箱の隅をつつけば突っ込めないこともないですが、概ね安心して読めました。

 トータルとして、ぱらぱらと読んで「あー、こんなプログラミング言語があるのかー」「こんな裏話があるんだ」といった感じで、読み物として楽しめるものになっているというのが率直な感想です(色々偉そうですいません)。というわけで、オススメです。