Perl Hackers Hub

第14回最新Perl使いこなし術―リファレンスの引き方、5.10以降の新機能(1)

本連載では第一線のPerlハッカーが回替わりで執筆していきます。今回はWEB+DB PRESS Vol.62の特集1「HTML5/CSS3/JavaScript実践入門」などの記事でおなじみのcho45さんが、⁠最新Perl使いこなし術」を解説します。

はじめに

こんにちは。cho45です。今回は最新Perl使いこなし術ということで、ゆるふわに最近のPerl(バージョン5.10以降)の新機能を紹介します。

しかし、機能の詳細に困ったときはリファレンスを頼るのが一番ですし、ここでは紹介しきれない機能もありますので、自分で調べられるように、先にリファレンスの引き方をおさらいしておきます。

なお本稿では、言語としてのPerl(先頭大文字)に対し、それを実行する処理系としてはperl(全部小文字)という表記で使い分けます。

リファレンスを引く

何を今さら……とお思いになる人もたくさんいるとは思いますが、コードを書いていてわからないことに出くわしたとき、公式リファレンスなどにあたるのは基本中の基本なので、今一度どんな方法があるか整理しておきましょう。

すごい人になるとリファレンスに書いていないことも、ソースを読んで解決したりするわけですが、たいていはリファレンスに書いてありますし、まずはしっかり引けるようになりたいですね。

perldoc

perldocはperlに付属しているドキュメントの名前、またはコマンド名です。MacやLinuxなどperlがはじめから入っている環境であれば、設定なしで使えます。ターミナルでperldoc perlと入力すれば、どんなドキュメントがあるかの一覧を見ることができます。

筆者は次のドキュメントをよく読みます。

  • perldoc perlre:正規表現のドキュメント
  • perldoc perlsyn:文法のドキュメント
  • perldoc perlop:演算子のドキュメント
  • perldoc perlfunc:組込み関数のドキュメント
  • perldoc utf8:utf8プラグマのドキュメント

関数のドキュメントを読む

perldocコマンドに-fオプション(functionのfです)と関数名を付けて実行するとperldoc -f 関数名⁠、その関数のリファレンスをすぐに開くことができます。

モジュールのドキュメントを読む

インストール済みのモジュールのドキュメントは、perldoc モジュール名で見ることができます。

また、perldoc -m List::Utilのように-mオプションを付けることで、そのモジュールのソースコードを読むことができます。ソースコードを読みたいとき、いちいちそのモジュールの場所を探す必要がないのはストレスを軽減できます。

ほとんどのモジュールにはSYNOPSISという項目が一番上にあり、典型的な使い方が書かれています。詳しい内容を読まなくても、そこを読めばどう書けばよいかわかることが多いです。

ブラウザでperldocを読む

コマンドラインよりもブラウザのほうが慣れているし、読みやすい場合もあります。そんなときはhttp://perldoc.perl.org/にアクセスすればHTML化されていい感じになっているドキュメントを読めます。

あるいは流し読みで全体を把握したり、英語を読む気にならない場合には、http://perldoc.jp/に日本語のperldocもあります。ありがたいですね。


いろいろありますが、まとめると次のとおりです。

  • 全体を把握したいならperldoc.jp
  • 最新のを読みたいならperldoc.perl.org
  • CUIに慣れてるならperldocコマンド

実際にコードを書くときは、だいたいperldocコマンドを使うことになると思います。

CPAN

PerlにはCPANという膨大なライブラリの蓄積があります。CPANにあるものでたいていのことはどうにかなるので、実際のところPerlはCPANを使うためにあると言ってもよいぐらいです。perldocコマンドでperl本体のリファレンスを引けるようになったら、次はCPANモジュールのドキュメントも自由に引けるようになりたいものです。

インストール済みのモジュールのドキュメントには先のperldocコマンドが使えますが、インストールしていないモジュールには使えません。cpanコマンド(デフォルトでインストール済み)cpanm(軽いので最近よく使われている)でそのモジュールをインストールしてperldocするでも悪くはないのですが、少々面倒ですし初回に時間がかかります。

それに、インストールする前にどんな機能のモジュールかぐらい調べたいですし、そもそも何かモジュールを探す場合、似たようなことをするモジュールがいくつかあったりするので、見比べたいものです。

search.cpan.org

そういう場合にはhttp://search.cpan.org/が便利です。全部のモジュールのドキュメントをHTMLに変換された形で見ることができます。モジュールの名前などで検索もできるので便利です。

metacpan.org

また、最近できたhttps://metacpan.org/というのもあります。こちらは、

  • ドキュメントの全文検索
  • モジュール名のインクリメンタルサーチ

ができて便利です。特にCPANモジュールは命名規則がわかりやすいものが多いので、モジュール名のインクリメンタルサーチでだいたい「これが欲しいかな」というものを見つけられます。

おすすめ記事

記事・ニュース一覧