Perl = Practical Extraction and Report Language の略. これには何か色々面白い話があるので,ナットシェルの 「Programming Perl(邦訳:Perl プログラミング,ソフトバンク)」 は必読.
パターンマッチのための正規表現に優れ, 文字処理に適している. スクリプト言語なので書いて即実行できる. が,インタープリタのため多少遅い(コンパイル可能ではあるが). 文法は C に類似. 最近 Web の普及にともない,CGI 記述言語として脚光を浴びている.
4のころの文献なのでかなり古い.
Comprehensive Perl Archive Network: 先人の知識の宝庫。本体もあるしな。
CPANのミラーの一つなどを黙って掘るか、CPANモジュールを使って自動インストールしてしまうか(ちょっと怖いけど便利)。
[自動インストールの仕方]
# perl -MCPAN -e shell
...
cpan> install 対象モジュール
CPAN の rpm 群がある。
漢字コード変換パッケージ.jperl じゃなくても使えるところが強み.
GIF ファイルを出力するためのライブラリ GD Graphic Library へのインターフェースを提供する Perl 5 用ライブラリ.
しばらく使っていました。別に悪くはない。
Apache httpdが一体になったperl言語環境。手元でCGIの実行テストができるので便利。
使ったこと無い
CITANライブラリのpodの日本語版
基礎はここで。
ここもなかなか。
Perlのクラス即席作成方法。(2002-11-16:結城さんよりバグ指摘あり。多謝)
ちなみに以下のmyはlocalと同じで変数を局所変数として宣言するためのものです。
MyClass.pmというファイルを以下のように作ります。
package MyClass; # パッケージ宣言 1; # 最終行のおまじない
ここで、$obj = new MyClass(arg1, ..., argn);は、MyClass::new(MyClass, arg1, ..., argn)と等価であることに注意。
package MyClass; sub new { my ($class, $arg1, ..., $argn) = @_; # 引数を整理 my $self = {}; # オブジェクトとなるハッシュの種を作ってそのリファレンスを取る $self->{arg1_} = $arg1; # メンバ変数arg1_設定 ... $self->{argn_} = $argn; # メンバ変数argn_設定 bless $self, $class; # 神の祝福をもって世界に旅立つ?($classはサブクラス化のため) $self; # 関数の最終行の値が関数の返り値 } 1;
ここで、$obj->method1(arg1, ..., argn)は、MyClass::method1($obj, arg1, ..., argn)と等価であることに注意。
package MyClass; sub new { my ($class, $arg1, ..., $argn) = @_; my $self = {}; $self->{arg1_} = $arg1; ... $self->{argn_} = $argn; bless $self; $self; } sub method1 { my ($self, $arg1, ..., $argn) = @_; # 任意の処理 $self->{arg1_} = $arg1; # などなど } 1;
あとは繰り返し。おしまい。
Last-Modified: $Date: 2002/11/16 01:12:25 $