tsucchi’s diary(元はてなダイアリー)

はてなダイアリー(d.hatena.ne.jp/tsucchi1022)から移行したものです

モダン(?) ActivePerl 入門

mixi でも使われているという噂*1ActivePerl。モダンなActivePerl スクリプトでは、先頭の shebang

#!/usr/local/bin/activeperl

と書くのはもはや常識ですよね!

しかしながら、Unix 系 OS など、ActivePerl がインストールされていない環境が多いのもまた事実。そういった環境では、下記のシェルを置いておくのがお勧めです。

tsucchi@over[101]% cat /usr/local/bin/activeperl
#!/bin/sh
exec /usr/bin/env perl $@

すると、ActivePerl が入っていない環境でも、

tsucchi@over[102]% /usr/local/bin/activeperl -v

This is perl, v5.10.1 (*) built for i386-freebsd-64int

Copyright 1987-2009, Larry Wall
...(略)

こんな感じでインストールされた Perl を代わりに見てくれます。もちろん shebang 行にも対応可能。perlbrew との相性もばっちりです。あとは perlbrew で ActivePerl がインストールできれば完璧ですね!(できるのかなぁ???さすがに無理か?)

補足、というかちょっとまじめな話

性能面は知りませんが、ActivePerl は Windows で使うならすばらしいプロダクト(私はあんまり使ってないし、近年は Strawberry のほうがメジャーですが)ですし、Perl 自体も、すばらしい言語であり、私のお気に入りでもあります。ですので、

http://twitter.com/kentosho/status/20873410973

ここまで巨大なシステムをActive Perlで動かしている時点でいろいろ無理があるよなぁ。今回の障害はそういう無理の積み重ねでは?これを機にPHPに移行した方がいい気がする。#mixi

こういったデマが流され、またコレを信じてしまう人がいる、という現実は悲しいです。

mixi だけでなく、livedoor とかモバゲーとか、大量のアクセスがある Web サイトで Perl は使われています。私のところでは、アクセスはこれらのサイトとは比較になりませんが、エンタープライズ系のアプリケーションで Perl を使っています。また、「便利なシェルスクリプト用」として、Perl を使っている root/admin の方も沢山いることでしょう。

繰り返しになりますが、Perl は高速で、便利で、書いていて楽しい、すばらしい言語です。PHP などと比較するのは自由ですが、Web でもその他の用途でも、性能面や開発のしやすさなどで劣ることは決してないと思います。

*1:念のために書いときますが、mixi では ActivePerl は使ってないそうです。Linuxで普通の Perl を使っているらしいです。