Perlというプログラミング言語があります。
業務で使用したこともあり、軽量言語としてのコーディング量はいちばん多いです。
最近、めっきり耳にすることがなくなりました。
本屋さんの棚はPythonに取られました。本もあまり見かけません。
もう学ぶ必要がない言語なんでしょうか?
プログラミング言語Perl
プログラミング言語Perl、ちょっと前まではとても人気の言語でした。
軽量言語としても使えるし、Web系のCGIでも使えるし、学ぶお得感がありましたよね。
私はC++を母語としますが、第2語としてPerlを愛していました。
しかし、軽量言語の代表はRoR(Ruby on Rails)が流行ったときにRubyになりました。その後はAIの大波の中でPythonに奪われました。2022年現在においてはPython一色です。信じられません。
既存プログラムの改修とか、PMの思い入れでもない限り、Perlでプログラムすることはなくなりつつあります。
プログラミング言語Perlが2022年の現在においても役立つ場面はシェルの拡張として使っていくというところしかないかと思います。
Perlをシェルの拡張として使う本「ミニマルPerl」を紹介します。
シェルの拡張言語としてのPerl
現在においてもPerlを使っています。
シェルの拡張言語として日々の雑業をこなしています。
現状、自信をもってPerlが他軽量言語より優れていると言えるのはシェルとの親和性がとても高いと言う事です。
ミニマルPerlは、シェルを拡張するような形でPerlに入門していく本です。
さらにそこで学んだシェル内での使い方は、Linuxを使う限り一生の宝物となります。
プログラミングは知らないけどLinuxのコマンド、操作方法は習ったという人にはとてもよい本です。
第1部ではLinuxでワンライナーとしてPerlを十二分に活用していく方法、第2部ではスクリプトとしてPerlを使うための方法が説明されます。
シェルの拡張としての説明は第1部ですので、こちらを主に説明します。
シェルのワンライナーで有効に使う
実はシェルをよく知ることができる本でもあります。
- grepの改良としてのPerl
- sedの改良としてPerl
- awkの改良としてPerl
- findを強化するPerl
と、シェルの機能を拡張する話が第1部で200ページくらいを費やします。
今まで、grep, sed, awk, findを使ったことがなかった人は、これを契機に使えるようになります。おそらくPerl改良版だけでなく、元のgrep, sed, awk, findも使いこなせるようになると思います。
本書で推奨されるようにPerlを使い方を一回できるようになると、例え完全に覚えていなくても、他の人がgoogleで調べて数時間かかることが、数分で調べることができるようになります。
Perlの正規表現
grep, sed, awk, findのPerlによる置き換えは、統一された豊かなPerlの正規表現へのいざないです。
grep, sed, awkごとに正規表現の細部が異なります。
コマンドによって正規表現が違うという罠にはまる度に心が折れそうになります。
しかし、Perlで統一的に正規表現を覚えておけば怖いことはなくなります。
呪文のようなシェルを避ける
grep, sed, awk, findを使ってシェルを組むと、どうしても可読性が落ちます。
シェルスクリプトの途中に出てくるgrep, sed, awkの正規表現を駆使しているのは、控えめに言って呪文です。
他開発者を呪い殺そうとしているとしか思えません。しかも何のコメントもないこともあって、書いた人を小一時間説教したくなります。
Perlを使っていると、特に「ミニマルPerl」の使い方をしていると大いなる可読性を手に入れることができるようになります。
第2部もいいですよ
Perlを使って開発を行うようになるとすれば第2部の知識は必須です。
2022年の現在においてはそのような場面はないかもしれません。Perlが好きなプログラマとしては悲しいことです。
まとめ
プログラミング言語Perl、現在多くのプログラマが使うとしたらシェルの拡張として使えます。
是非「ミニマルPerl」を読んでみて下さい。
コメント