ニコニコ大百科モバイル

7/2(月)よりスマホまたはPCでアクセスした場合、各デバイス向けのサイトへ自動で転送致します


Perl


ヨミ: パール
掲示板をミル!
13カキコ!

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


概要


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

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

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

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

いいところ

むつかしいところ


処理系



perl


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

CGI経由でのPerl

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

PSGI

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

PSGIが提案される以前にも、Perlでwebアプリケーション実装するための様々なやり方が存在したが、それは特定フレームワーク・ミドルウェア・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


■sm1024453[ニコ動]

■sm2164173[ニコ動]


関連商品


■az4873115671
■az4873116287
■az4873113008
■az4873110963


関連コミュニティ


■co1373


関連項目



外部リンク



最終更新日: 19/06/01 21:41
タグ検索 パソコン版を見る


[0]TOP
ニコニコ動画モバイル
運営元:ドワンゴ