2007年8月23日木曜日

LL用ネットワーク対応モジュールローダー

LLとはLightweight Languageのことで、Perl, Rubyなどのスクリプト言語を指す。
これらの言語ではモジュールを動的にロードすることができる。
原理は簡単で読み込んだファイルをプログラムとして評価(eval)するだけだ。
例えば、Perl, Rubyにはrequireという命令がある。
しかし、これらはローカルなパスにしか対応していない。
これを一般的なURLにすれば特定のサーバ側にモジュールを用意するだけで済む。
つまり、モジュールのインストールが不要となる。
もちろん、サーバ側の負荷が高くなるので、キャッシュを用いる必要がある。
キャッシュさえあればオンデマンドにインストールされることと等しい。
便利そうに感じるが、まだない理由は、機種依存のコードにあると考えられる。
LLもJavaのように機種に依存しない中間コードがあれば、このような問題は解消される。
例えば、RubyにはJRuby(Javaで実装したRuby)がある。
Perlもバージョン6には中間コードに翻訳されると聞く。
インフラは徐々に整備されつつある。

0 件のコメント: