魂のある言語 “ perl ”
先日職場で、システム担当者(プログラマ)が出張だったため、私が代わりにPHPを触るハメになった。
(前の会社では仕事が増えるのを恐れ、公式では「perl/PHPは使えない」ことになっていた)
結局サーバの設定不具合ということで私の出番は終了したのだが、このときふと思いだしたことがある。
それは今から約12年前に、私が “perl (パール) ” と出会った頃の話である。
私が始めてperlに出会ったのは、懐かしの「ゆいちゃっと」。
1990年代初頭は、まだチャットやBBSによる情報交換が主流だった。
当時自分が所属するコミュニティでの標準ツールが「ゆいちゃっと」だったのだ。
自分のホームページにも当然BBSとチャットは設置したのだが、その作業中にperlのスマートさに気づき、魅了され、俗に言う「ラクダ本」を手にすることになる。
「ラクダ本」とは、perlを作ったラリー・ウォール氏が執筆した「プログラミングperl」という本のこと。
この本は表紙にラクダの絵が描かれており、perlプログラマーの「正典」になっている。
プログラム系の技術書は、大概が難解な言い回しと、今すぐにでもデフラグが必用な「複雑なディレクトリ構造」に満ちあふれている。
だが、この「プログラミングperl」は、スクリプト同様実にスマートで読みやすかった。
それは氏が言語学を学んでいたことに起因するようである。
文章のセンスと構成が、そのままperlと、perlの解説書に生かされているのだ。
今思えば、氏が言語学を学んでいなければperlの文法も変わっただろうし、言語文学系指向の自分がこの言語に魅了されることも無かったと思う。
この本はperlスクリプトを書くものにとって、スクリプトに「魂」を宿らせる最後のエッセンスと言えよう。
しかも、この本の中には至る所にラリー・ウォール氏のユーモアと哲学でがちりばめられている。
一度その世界に触れたら、きっとperlが好きになるだろう。
(余談だが、ラリー・ウォール氏は20年以上もホンダのアコードに乗り続け、合気道も習っている大の日本びいき)
現在、Web系のプログラミング言語は様々なものがある。
特に注目すべきは、perlから生まれたPHP。
だが、強力なデータベース機能と処理速度を備えたPHPを見て「PHPで足りるし、もうperlはいいや」なんて考えないで頂きたい。
そう考えるあなたは、まだperlの素晴らしさに気付いていないだけなのだと思う。
中でも素晴らしいのは、perlの応用性。
perlは別名「グルー(糊付け)言語」とも呼ばれていて、数ある言語の中でも糊付けの良さは天下一品だ。
ちょっと比較してみよう。
PHPはWebに特化した仕様なので、それ以外の環境では活躍できない。
だがperlは違う。
perlはスクリプト言語であるにも関わらず、GUIアプリケーションを開発することもできる。
一定の設定をすることで、動作環境(特にOS)を気にすることもない。
RagnarokユーザにはおなじみのBotもWindows用の「Active perl」で動作していたし、perlで作られたブラウザもあるほどだ。
またDBIという優れたデータベースインターフェイスを持っている。
通常、データベースをPostgreSQLからmySQL等に変更する時、ソースも大きな変更を強いられる。
だがDBIはクロスプラットフォーム的な要素を持っており、各データベース固有の機能を使っていなければ、ほとんどソースを変更することなく使用でき、変更も極めて少なく済む。
ホント、perlは何でもペタペタとくっつける万能性を備えているのだ。
自分にとって初めて触れた言語が、実用美にあふれ、柔軟な「perlという言葉」で良かったと、本当に思う。
そんなperlの書籍の中に、「車輪を二度発明しない」という言葉があった。
企画屋やデザイナーの大半が「借り物は格好悪い」というイメージを持っており、強引にでも自ら新しい物を生み出そうとする傾向にある。
実際、これまで私が接してきたデザイナーや企画屋のほとんどがそうであった。
だが、優れたものを二度開発する必用はないし、同等機能の新しいものを二度も開発することはできないだろう。
むしろ優れたものは堂々と使い、物足りなくなったら作者に了解を得てカスタマイズしたら良いのだ。
プログラマーは機能美と製作効率を重視する傾向にある。
だからこそ5時間かかる手作業を避け、2時間のプログラムでツールを作って5分の動作で完了させたりと、車輪を使い回して製作効率を取るのだ。
効率を重視する私も、この意識が強い。
結局何が言いたいのかとりとめもなくなってしまったが、少なくとも車輪を二度発明するような愚は犯したくないということ。
また、自分が統括する仕事の場合は、無意識に実戦してるなぁ、と思っただけである。
いや、私生活でもか?
Posted by ナカノヒト : 2006年02月04日 14:29 | コメント (0)