Perl ~ リファレンス、チュートリアル、解説記事などのまとめ

2009年2月26日

テキスト処理やシステム処理などを得意とするライトウェイトなプログラミング言語のリファレンス、チュートリアルなど


PerlはC言語に似た文法を持ち、正規表現や連想配列など柔軟な処理機能が充実しているインタープリタ型のプログラミング言語です。

もともとPerlはUNIX上でテキストファイルの操作やバッチ的な処理の記述を中心に利用されていましたが、現在ではWebアプリケーションを記述する言語としてよく利用されています。代表的な例として、MovableTypeやPlaggerなどがあります。

また、CPANと呼ばれる機能拡張用のモジュールが非常に充実しているのも大きな特徴です。

主なWebサイト

Perlの代表的なWebサイトは、The Perl Foundationの運営するPerl.orgと、そして米オライリーのPerl.com、そしてJarkko Hietaniemi氏の運営するCPAN(Comprehensive Perl Archive Network)の3つでしょう。

  • Perl.org (英語)
    各種Perl情報へのポータル的なサイト
  • Perl 5 WikiPerl 6 WikiParrot Wiki
    The Perl Foundationが運営する、それぞれのバージョンのOfficial Wiki
  • CPAN (英語)
    1万種類以上のPerlモジュールや関連ソフトウェアのライブラリ、ドキュメントなど
  • Perl.com (英語)
    オライリー社が運営するPerlの情報サイト

また、use PerlはPerlの情報発信サイト、Planet Perlは、Perlブログのアグリゲーションサイトです。

日本ではPerlの普及や啓蒙を目的とする団体Japan Perl Associationが2009年4月の設立に向けて準備中のようです。

また、以前にPerl情報のハブサイトを目指してPerl-users.jpが開設されました。

入手方法

Perlはオープンソースであり処理系は基本的に無料で入手できます。当初UNIX上で広く普及した歴史的経緯から、UNIX系のOSでは標準でPerlを搭載していることが一般的です。

Webアプリケーション用にPerlを利用するのであれば、Apache、MySQL、PHP、Perlなどが1つにパッケージされたApache FriendsXAMPPが導入も容易でお勧めです。ただし、XAMPPにデフォルトで入っているのはMiniPerlと呼ばれるPerlのミニセットです。フルセットのPerlは、XAMPPアドオンとして用意されています。

ActiveState社によるPerl互換の実装であるActivePerlもよく知られています。ActivePerlはStandard Distributionが無料配布されている一方、Active Perl Enterpriseが商品として販売されています。

上記の2種類がよく知られたPerlの実装ですが、それ以外にもCPAN(Comprehensive Perl Archive Network)Portsページには、これまでに存在した100種類近いPerlの実装一覧があります。また、PerlのソースコードはCPAN/src から入手できます。

マニュアル・リファレンス

英語では、perldoc.perl.orgでPerlのFAQ、歴史、詳細なリファレンスなどが読めます。PDF版も用意されています。

日本では、Japanized Perl Resources Projectが翻訳に取り組んでいるようです。また、Network Tactics社がリファレンスを翻訳し公開しています。

Perlの概要と歴史を理解するにはWikipediaのPerlの項目が充実しています。

ネット上には多くのチュートリアルやリファレンスが存在しています。ここでは主なものを紹介します。

サンプル・ノウハウ・読み物

Webサイト用のカウンタやメールフォームといったPerlのサンプルプログラムも数多くのWebサイトで配布されています。

ITproでは、Perlを使った定番の文字列処理からQRコードの生成までを解説した日経ソフトウェアの連載が掲載されています。

技術評論社のGihyo.jpでもPerlの特集が組まれています。

モダンPerlの連載も始まったばかりですが、注目ですね。

All AboutやQ&AサイトのOKWaveでもPerlの情報が読めます。

開発環境

Perlを利用したプログラムの開発はテキストエディタで行われることが主流のようです。テキストエディタのアドインと、統合開発環境を紹介します。

テキストエディタのvimやEmacsでPerlのプログラミングをサポートするアドイン。

日本製の開発支援ソフトウェアもあります。

以下の統合開発環境はいずれも英語版です。

コミュニティ・イベント

The Perl Foundationが組織するPerlのコミュニティ"Perl Mongers"(Perl屋たち、Perlに夢中になる人たち)は世界中に広がっており、日本にも複数のPerl Mongersがあります。

各地のPerlコミュニティは独自で勉強会やイベントなどを行っていますが、Perlイベントで大規模なものは、The Perl Foundationが実施するYAPC(Yet Another Perl Conference)でしょう。YAPCは日本でも開催されています。

YAPC::Asia2008 Kogai Dan Speech introduction - YouTube YAPC::Asia2008 Kogai Dan Speech introduction - YouTube
小飼弾氏による"Perl The Second Languge"の講演
Perl Is unDead‎ - Michael Schwern (‎Schwern‎) Perl Is unDead‎ - Michael Schwern (‎Schwern‎) - ニコニコ動画
YAPC::Asia 2008最後のセッションで行われた講演。日本での-users.jpブームの発端

話題

現在のPerlのメジャーバージョン番号は5ですが、次のバージョンのPerl6は後方互換性がなくなることが発表されています。また、Perl6からはPerlプログラムの実行がParrotと呼ばれる仮想マシン上で行われることになり、Perl6からPerlは大きく変化することになりそうです。ただし、Perl6は2000年に発表されてから現在も開発途上であり、完成時期はまだ未定になっています。

Perl開発者のLarry Wall氏は日本好きで知られています。また、日本ではPerlの多言語化モジュールのメンテナーである小飼弾氏や、Plagger作者でSix Apartの宮川達彦氏などが有名です。

Perlに関するおすすめ書籍

すぐわかるPerl すぐわかるPerl
Perlを使ったプログラミングの入門書。変数、分岐、ループといった基本から始まり、正規表現、リカーシブ、CGIまで(目次
新版Perl言語プログラミングレッスン入門編 新版Perl言語プログラミングレッスン入門編
Perlの入門書として、随所に短いサンプルプログラムが説明に使われていて実践的。Perlの使いこなしに大きく関わる正規表現の解説が分かりやすい(目次
初めてのPerl 初めてのPerl
Perlの入門書としての定番本。他の言語でのプログラミング経験がある、という人に。表紙の動物から「リャマ本」と呼ばれている(目次
続・初めてのPerl 続・初めてのPerl
中級プログラマ向けに、Perlのオブジェクト指向とそのメカニズムの解説が中心。モジュール、リファレンス、そしてオブジェクト指向プログラミングについて(目次
プログラミングPerl〈VOLUME1〉 プログラミングPerl〈VOLUME1〉
いわゆる「らくだ本」。中級以上のプログラマ向けに、Perlの機能が詳細に解説されている。Vol1は言語としてのPerlとUnicodeやコンパイル、デバッガなどの仕組み。2分冊中の1冊(目次
プログラミングPerl〈VOLUME2〉 プログラミングPerl〈VOLUME2〉
Perlエキスパートを目指す人に。Vol2では、CPAN、セキュリティ、移植制、そしてPerlリファレンスマニュアル(目次
Perlベストプラクティス Perlベストプラクティス
コードのレイアウト、変数のテクニック、制御構造の選択、エラー処理の方法など、Perlのコーディングついて著者の実体験に基づく200以上のベストプラクティスを集めた一冊(目次
すぐわかる オブジェクト指向 Perl すぐわかる オブジェクト指向 Perl
Perlで大規模なプログラムを開発するのに必要な、リファレンス、パッケージ、モジュール、オブジェクト指向に絞って、くだけた文体で読みやすく解説している(目次
モダンPerl入門 モダンPerl入門
近代的なオブジェクト指向とはなにかをソースコードとともに解説する第一章に続き、デザインパターンの例を紹介、フレームワークとしてはCatalystなどを取り上げる。後半ではテストの自動化やパフォーマンスチューニングなど。業務としてPerlプログラミングをしている人に(目次
最速攻略 CGI/Perl 作り方入門 最速攻略 CGI/Perl 作り方入門
はじめてプログラムを書く、という人のCGI入門書。カウンタ、サイコロゲーム、掲示板などの作り方を、大きな画面と一緒にソースコードを見ながら1行ずつ解説していく(目次
Perl/CGI逆引き大全 600の極意 Perl/CGI逆引き大全 600の極意
Perlのさまざまな命令、関数を使ったサンプル集。ファイル、ディレクトリなどの操作、リファレンス、ライブラリ、ハッシュ、正規表現。そして掲示板、チャット、メール送信、アクセスログ解析などのサンプルも後半で提供している(目次
CGIプログラミング CGIプログラミング
業務ソフトウェア品質のCGIプログラミングを行うために書かれた職業プログラマ向けの解説書。HTTPの中身、CGI.pmの使いこなしなどCGIプログラミングの基本から解説(目次
CGI&Perlポケットリファレンス CGI&Perlポケットリファレンス
Perlでプログラミングするとき辞書代わりに一冊、机の上に置いておくのに手軽な本


Perlに関するビデオ

Larry Wall Speaks at Google - YouTube Larry Wall Speaks at Google - YouTube
2008年6月に米Googleで行われた、Perlの開発者Larry Wall氏の講演。Perl6がどんな言語になるのか
Language Update -Perl- - YouTube Language Update -Perl- - YouTube
2006年8月「LLRing」で、サイボウズ・ラボ竹迫氏によるPerl6の開発状況やPerl5からPerl6で何が変わるのか? などの解説
Plagger: the duct tape of the Web (Why Pluggable?) - YouTube Plagger: the duct tape of the Web (Why Pluggable?) - YouTube
2006年11月「XML開発者の日」に行われた宮川氏によるPlaggerの紹介。海外からSkypeなどを経由したプレゼン

あわせて読みたい

プログラミング言語 Perl




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本