argius note

プログラミング関連

Parrotちょっと勉強

Parrotは将来的にはPerlに限らないようですが、Perlのカテゴリとして書いてみます。
Parrot 入門 - The Parrot Primer
ぐぐるのラッキーさん*1で開きますが、いまやRubyでもYARVの開発をされていることで有名なささださんによるページ*2です。勝手な解釈かもしれませんが、動的言語のVMという点で共通することが多い、と云うことでしょうか。ちなみに、「ぱるま」にも彼の記事が載ってます。

20060401-ParrotManiacs - Perlish Magazine
ささださんからご指摘をいただきましたので、差し替えました。「ぱるま」の方です。
名前の由来が、エイプリルフールでPerlPythonが動く処理系というネタがあって、その名前を取ったということらしいです。嘘から出た真を地で言ってるような話ですね。
あと、Parrotはレジスタアーキテクチャだそうです。Perl5まではスタックマシンだったとか。他にも、JavaVMや.NETのもスタックマシン。レジスタは、つまり、物理的なCPUのアーキテクチャの要素で、マシン語とか分かる人には当たり前の存在ですね。たぶん。(ハードウェアCPUに対してソフトウェアCPUと言える?)
これを使えば、個人でも「可搬性のある」インタプリタ言語が割と容易に作れてしまうかも。

*1:GoogleのI'm Feeling Luckyのことを言っているらしい。

*2:Diaryページに行ってみると...