単語記事: Perl

編集

Perlとは、プログラミング言語、及びその処理系である。書きやすく読みにくいことに定評がある

概要

ラリー・ウォール(Larry Wall)により作成されたスクリプト言語Perl、及びその処理系(こちらはperlと書く)。

元々は珠の英語表記pearlであったが、別の言と名前がかぶっていることに気がついたため今の名前となっている。

正規表現を利用した文字列処理に優れており、簡単なコマンドライン制御ツールテキスト処理、CGIプログラムにしばしば用いられてきた。

書きやすいため、Javascriptが存在すらしなかった1990年代前半以前は、Web上でインタラティブなページを作るためのCGI用途では流を占めていたが、読みづらさが災いしたのかRuby, Python, Javascriptなどの後続の言にその地位を奪われてしまった。

いいところ

  • 様々な記述方式があるため、慣れると快適に記述することができる
  • CPANが利用できるのであれば他の人が作ったモジュールを再利用できる
  • オブジェクト指向を柔軟に表現することができる
  • 文字列に対する演算が高い

むつかしいところ

処理系

perl

フリーソフトウェアで、アーティスティックライセンス/GPLにより配布されている。実際に開発されている一の処理系である。

CGI経由でのPerl

CGI経由で用いる場合はFastCGImod_perl(Apache)などを使用すると、プログラムメモリにキャッシュされ、高速に処理出来るが、内容がキャッシュされることを前提に記述されたコードでないと正しく実行出来ないため、高速化を行うためにはそれを意識したプログラムの作りとしなければならない。

PSGI

webアプリケーションのためのPerl利用方法として、昔からの方法であった標準入(+環境変数)標準出とのやりとりではなく、Perlでの処理を前提とし、Perlのやりかたで入出手段(インターフェイス)を定義したのがPSGI(Perl Web Server Gateway Interface Specification)である。これにより、PSGIのやりかたで記述されたPerlwebアプリケーションPSGIを提供するどのサーバーでも実行可となる。

PSGIが提案される以前にも、Perlwebアプリケーション実装するための様々なやり方が存在したが、それは特定フレームワーク・ミドルウェア・webサーバ依存する(つまり移植性に乏しい)ものであった。

CPAN

PerlはCPANというパッケージ管理システムを用いることによって機を付加できる

同様の物に、RubyではRubyGems、PythonではpipPHPではPEARがある。

Hello, world

(Command Line)
>perl -e "print 'Hello, world'"    
(Console Program, Linux)
#!/usr/bin/perl
binmode STDOUT, ":utf8";
use utf8;
use strict;
use Perl6::Say;

say "Hello, world!";
(CGI,Linux)
#!/usr/bin/perl
binmode STDOUT, ":utf8";
use utf8;
use strict;

print "Content-type: text/html charset=utf8\n\n";
print "<html><head></head><body><p>Hello, world!</p></body></html>";

Perl6

Perlメジャーバージョンは6まであるが、Perl6は開発者こそ同じラリー・ウォールであるものの、大幅な変更が加えられたため互換性はないに等しくPerl5までとは別の言と考えられている。

関連動画

左: Perlで作っているらしいが…なんぞこれ
右: グニャラくん★歌ってみたネタ…ニッチすぎるだろうJK

関連商品

関連コミュニティ

関連項目

外部リンク


【スポンサーリンク】

携帯版URL:
http://dic.nicomoba.jp/k/a/perl
ページ番号: 694842 リビジョン番号: 2301426
読み:パール
初版作成日: 08/11/07 19:01 ◆ 最終更新日: 15/12/17 06:50
編集内容についての説明/コメント: 概要の細かい点を修正。
記事編集 / 編集履歴を閲覧

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

Perlについて語るスレ

1 : ななしのよっしん :2010/01/19(火) 03:05:50 ID: DuyZI3tBE/
絶望した!も書き込んでいないことに絶望した!

確かに特徴的でクセはあるけど、未だにされてる言なのに…
掲示板とかチャットとかで皆一度はお世話になってるんだぞー!
2 : ななしのよっしん :2010/02/19(金) 13:42:05 ID: +Fs90R/LwP
用してるw
PHPに魂を売る気は今のところいw
3 : ななしのよっしん :2010/08/16(月) 05:51:35 ID: qfq+i4+NMB
Hello Worldの例文、コンテンツタイプhtmlって定してるのに文字列直書きってどうよ?
4 : ななしのよっしん :2010/08/16(月) 10:24:40 ID: +Fs90R/LwP
ほんとだwプレーテキスト定しろよw
5 : ななしのよっしん :2011/01/24(月) 23:53:17 ID: USkas/VUGZ
$a と $b を使って怒られる
6 : ななしのよっしん :2011/01/26(水) 15:23:42 ID: nP9HFYRl8f
Perlプログラマだったらuse strictは必須
7 : ななしのよっしん :2011/04/06(水) 19:24:42 ID: sWWhP1ez0+
SpeedyCGIの存在が・・・忘れられとる
8 : ななしのよっしん :2012/12/06(木) 19:33:26 ID: hFZN7TzEsr
> 「perl」 はブードゥー教である
> ――少数の人だけしか理解できない呪文の不可解な連なりであり、
> ヤギの血を含み、あなたの魂を永遠に堕落させる。
> 上があなたに金曜21時に緊急の仕事を命ずるときにしばしば使われる。
9 : ななしのよっしん :2013/11/20(水) 23:51:58 ID: 6X4HAeOaJS
欠点にWindows,Windowsと書かれているけど,
Unixプログラム群を置き換えることを考えて作られたんだから,
Windowsで動作させることを前提に評する方がおかしいんだよなあ…
10 : ななしのよっしん :2014/07/03(木) 10:59:35 ID: SSR/H+K6Qr
・書きやすく読みにくい
正規表現を強みとしてインターネット初期のCGI用途に人気を集めた

この2点書いてれば十分だべ
  JASRAC許諾番号: 9011622001Y31015