Parrot 1.4.0 Mundo Caniリリース

オウムのロゴ Habrを読む間ずっと、Parrot VMへの参照はほんの少ししかありませんでした。 一方、プロジェクトは活発に開発されており、本日リリース1.4.0がリリースされました。 Parrotは、動的プログラミング言語のバイトコードを効率的にコンパイルおよび実行するように設計された仮想マシンです。 現在、Parrotにはいくつかの言語実装があります:Tcl、Javascript、Ruby、Lua、Scheme、PHP、Python、Perl 6、APL、および.NETバイトコードトランスレーター。





物語



Parrotは当初、Perl 6言語を実装する手段として考えられていましたが、PerlとPythonに基づいた新しい言語の作成に関する2001年のエイプリルフールのジョークにちなんで名付けられました。 2009年3月17日、Parrot 1.0がリリースされました。 2010年1月までに、実稼働対応のParrot 2.0が計画されています。



コンセプト



Parrotは動的言語の機能を考慮して設計されており、静的言語(JVM、.NET)の仮想マシンよりも効率的にプログラムを実行する必要があります。 Parrotは言語間の相互運用性をサポートしています。したがって、pearlで記述されたクラスはPythonで継承され、Tclでインスタンス化できます。



Parrotは、4つの形式で実行するためのインストゥルメントを受け入れることができます。



開発中:





PMC



Parrotは、レジスタベースの仮想マシンです(JVMや.NETとは異なります)。 レジスタタイプInteger、Number、およびStringに加えて、PMC(Polymorphic Container)がもう1つあります。 それを通して、配列、ハッシュテーブル、ソケットなどの複雑な構造を想像できます。 PMCは継承できます。 したがって、PMC ClousureとCoroutineを作成でき、PMC Subのすべてのプロパティが含まれます。



Parrotのプログラミング言語の実装



Parrotには、さまざまな完成度のプログラミング言語の実装がかなり多数あります。その中には、Pipp(PHP実装)、Pynie(Python実装)、Cardinal(Ruby実装)、Rakudo(Perl6実装)があります。 完全なリストはここにあります 。 PCT(Parrot Complier Tools)を使用して、独自の実装を作成できます。 文法を記述する最も簡単な方法は、PGE(Parrot Grammar Engine-Perl 6 Regexes implementation)を使用することです。



楽堂



Parrotが最初に作成されたPerl6実装。 積極的に開発されており、実装日はParrotのリリース後2日です(Parrotは毎月第3火曜日にリリースされます)。 テストの約70%が開催され、Perl6の最も有望な実装です。 ここでテストの進行状況を確認できます 。 スケジュールからわかるように、多くの作業が1年にわたって行われました。



Web



Mod_parrotはApache用に開発されたもので、Parrotの言語実装はすべて、100行未満のコードを使用してApacheと連携できます。



ParrotおよびRakudoの詳細については、 parrot.orgおよびrakudo.org参照してください 。 Parrot 2.0をリリースする予定で、Perl6 Rakudo仕様に完全に準拠する2010年1月を楽しみにしています。



All Articles