モダンPerlの世界へようこそ

第14回 Rakudo:実装する方法だってひとつではないのです

この記事を読むのに必要な時間:およそ 5 分

フィードバックを得るためのリリース

いったい何パーセント満たせばPerl 6の実装と認められるのか,みなさんのPerl 6に対する期待値がどのくらいで,現状の実装がそのどこまでを満たしているのかは,おそらく誰にもわかりません。

ただ,Perl 6にかかわるすべての人がいまもっとも必要としているのは,理想論や単なるスニペットではなく,実際のアプリケーションをつくってみたときに出てくる「あれが足りない,これはおかしい,これはどうすればいいんだろう」というフィードバックです。

いまでもすでにThe Perl Foundationの助成金を受けてPerl 6向けの軽量ウェブフレームワークの開発が進められていますが,Perl 6やRakudoをよりよいものにしていくためには,Perl 6を知り尽くした(ある意味突拍子もないコードは書けなくなっている)人以外からのフィードバックが不可欠です。

とはいえ,RakudoとParrotの開発版を落としてきてコンパイルして……という手順は,Perl 6でコーディングしたいだけの人にとってはいささか敷居が高いのも本当のこと。

それなら,バージョン1.0とは言えないけれど,毎月リリースされている開発版ほど手間をかけずに利用できるようなものを用意すればいいんじゃないか,ということで生まれたのが,バージョン「任意」を意味するRakudo *だったわけです。

待っているだけでは始まりません

Rakudo *にさらにバージョンがつくのか,それとも本当にスター,アスタリスクだけつけてリリースされるのかは,いまの段階でははっきりしません。機能的にも,どこがTodoとして残ってしまうかはまだわかりませんが,どの機能が動作するか(あるいはしないか)はRakudoサイトのステータスページや,月々のリリースノートに記載されています※6⁠。

ただし,これはあくまでも「開発版は怖い/面倒」という人のためのものです。せっかちな人は,Rakudo *を待つまでもなく,githubにあるリポジトリからソースを持ってきてコンパイルなりインストールなりすれば,いますぐにでも開発を始められます。

2009年8月19日には,Rakudoになってから20番目の開発版となるコードネーム「PDX」が公開されました(2009年2月以降,Rakudoは(特に問題がなければ)Parrotの定期リリースの2日後に開発版をリリースすることになっています⁠⁠。この開発版には,これまでRakudoに貢献のあったPerl Mongersグループの名前が冠されることになっています。

あいにく日本のPerl Mongersグループの名前はまだ候補にあがっていませんが(現在の候補についてはリポジトリ内のdoc/release_guide.podに記載されています⁠⁠,せっかくの機会ですからみなさんも少しPerl 6でコードを書いてみませんか。

The Perl FoundationのWikiにもいくつか候補があがっていますが,大きなものから小さなものまで,つくるべきものはいろいろあります。

連載第1回では,Perlの父ラリー・ウォール氏の言葉として,⁠Perl 5までは親の責任で育て上げましたが,Perl 6を一人前の大人にするのはみなさんであってほしい」という一節を紹介しました。⁠Perl 6マダァ?」と待っているだけでは何も始まりません。

なお,Rakudo *については来月開催されるYAPC::AsiaでもBlatislava.pm※7のジョナサン・ワーシントン(Jonathan Worthington)氏によるセッションが用意されています。氏は,2008年4月から(14番目の開発版にその名が残る)Vienna.pmの助成金を受けてRakudoの開発にあたっている古株の開発者です。もっと突っ込んだ経緯や最新情報を知りたい方は,ぜひ氏のセッションにご参加ください。

※6

最新情報を追いかけたい方は,IRCチャンネルメーリングリストブログのフィードなどのほか,twitterに専用のアカウントがありますのでフォローしておくとよいかもしれません。

※7

ブラティスラヴァはスロヴァキアの首都。16番目の開発版にその名が残っています。Wikipediaによると,ウィーンとは60kmしか離れておらず,ヨーロッパの首都同士としては最短距離だそうです。

Rakudoは遅いという方には

なお,公平のため,Perl 6の実装としてはここで取り上げたPugsやRakudoのほかに,SMOP(Simple Meta Object Programming)というものもあります。いまはTPFやGoogle Summer of Codeの助成金を受けながら大規模なリファクタリングを行っているところのようですが,こちらはもっと現実的な路線を行くことを目標に,エンジン部分をCでごりごり書いているのがひとつの特徴のようです。Rakudo/Parrotもある程度実装が固まって最適化のフェーズに入れば実用的なスピードが得られるようになるでしょうが,待ちきれないという方はこちらに注目してみるのもよいかもしれません。

著者プロフィール

石垣憲一(いしがきけんいち)

あるときは翻訳家。あるときはPerlプログラマ。先日『カクテルホントのうんちく話』(柴田書店)を上梓。最新刊は『ガリア戦記』(平凡社ライブラリー)。

URLhttp://d.hatena.ne.jp/charsbar/