
Perl
Perl(パール)とは、ラリー・ウォールによって開発されたプログラミング言語である。記述の美しさよりも実用性と多様性をモットーにしており、Cやsed、awk、シェルスクリプトなど他のプログラミング言語やスクリプト言語の優れた機能を取り入れている。CGIスクリプトやシステム管理、テキスト処理などのプログラムを書くのに広く用いられている。代表的なアプリケーションはMovable Typeなど。
言語処理系としてのperlはフリーソフトウェアである。Artistic LicenseおよびGPLのもとで配布されており、誰でもどちらかのライセンスを選択して利用することができる。UNIXやWindowsなど多くのプラットフォーム上で動作する。
Perlは当初、新約聖書の『マタイによる福音書』13章46節の「高価な真珠」にちなんで真珠を意味する「pearl」と名付けられた。ラリー・ウォールは肯定的な意味を持つ短い名前を選びたいと考えていて、彼によれば3文字および4文字の単語を辞書から探したが良いのが見つからなかったということである。また、彼は妻のグロリアにちなんで名前を付けることも考えたが、家族の会話でまぎらわしいために却下となった。
Perlの正式なリリースの前に、すでに「pearl」という名前のプログラミング言語が存在することに気づき、綴りを変更して「Perl」とした。このようにPerlは略語ではなく、もともと意味はないが、あとからいくつかの意味が考えられている。開発者ラリー自身によると、Practical Extraction and Report Language(実用的なデータ取得レポート作成言語)という意味を持ち、同時にPathologically Eclectic Rubbish Lister(病的折衷主義のガラクタ出力装置)という少し皮肉な意味も込められている。
Perlという名称の記述においては、若干の注意が必要である。プログラミング言語としてのPerlを示すときは「Perl」というように、頭文字を大文字にして固有名詞であることをはっきりさせる。Perl 5の現在開発されている唯一の処理系は「perl」という名前である。一般に「perlだけがPerlを解釈することができる」という表現がなされる。「PERL」のようにすべてを大文字にするのは誤りである。
このようにPerl 5現在において、Perlとは言語の名前であると同時に唯一の処理系の名前でもある。この処理系はC言語で書かれている。スクリプトは実行前に仮想機械向けにコンパイルされ、コンパイルされたバイトコードが実行される(ランタイムコンパイル)。そのため、厳密にはインタプリタとは異なる。
Pythonのように一旦生成したバイトコードを保存して再利用することは少ないが、これは現在のPerlのランタイムコンパイルが高速で、バイトコードから実行するメリットがあまりないことが理由の一つである。コンパイル済みコードの再利用としてはむしろmod_perlのような形式が好まれている。
PAR (Perl Archive Toolkit) というPerlスクリプトを実行環境ごとアーカイブし、単一のファイルにまとめるためのツールキットも存在する。JARのPerl版と考えてよい。実行可能ファイルを作ることもできるため、アプリケーションの配布に適する。しかしその場合はPerl実行環境をまるごと含むため、ファイルサイズが大きくなる傾向にある。
開発中のPerl 6はParrotという仮想機械の上で動作する。現在、ParrotCodeへのコンパイルを行うHaskellで書かれたPugsという処理系が開発されており、Perl 6ではPerl 5と違って複数の実装が公開される予定である。