What is eRuby?

eRuby = embedded Ruby

概要

HTMLにそのまま組み込めるPHPって便利だけど言語仕様が糞*1だから あまり使いたくないし、 かといってASPじゃM$*2を信用しきれん*3し、 JSPだとJavaだ*4し… *5

と、思い悩んだことはありませんか? 組み込み式というのはある程度CGIではとても便利です。 HTMLをそのままCGIに出来るのですから。 しかし、問題は扱う言語です。 既存の知っている言語がそのまま組み込み式になったら…。 そんなドラえもんでも頭を悩ます願いを叶えてくれるのがeRubyです。

eRubyとはHTML等のテキストにRubyのソースをそのまま埋め込めると言う物です。 既にRubyを知っているあなたは新たに言語を覚える必要はありません。 そのままRubyを扱えますし、既存のライブラリも使えます。 もう、eRubyを使うしかないでしょう!

eRubyを叶えてくれるモノ

eRubyには実現するにはeRuby用のインタプリタが必要です。 これには二つの実装があります。 erubyとERbです。 またERb/ERbLightが標準添付用に書き直されたERBと言うのもあります。

eruby

バイナリによる実装です。 コンパイルする必要があります。

ERb

Rubyスクリプトによる実装です。 erubyよりは重くなります。

ERb/ERbLightという簡易版が存在します。 ベンチマークを取ってみたところerubyとさほど速さに違いがないようです。 もともとのeRubyの違いはERBで述べます。。

ERB

ERb/ERbLightが標準添付用に書き直されたものです。 1.8から標準添付されています。

簡易版ですがほとんど同等です。 違いはスクリプトのなかでのprint(及び標準出力するメソッド類)が 使えないことです。 この違いはPHPユーザーにとってはかなり戸惑う物かも知れません。

*1かなりの偏見

*2窓達や事務所、視覚的仕事場等を販売している会社。 最近は「点網」というモノにご執心。 それより網間探検家をはやくバージョンアップして欲しいんだが…。 で、ペケ箱はどうなったんだ?

*3これまた偏見

*4理由になってない感じが…

*5そもそも、ASPとJSPはXREAではまだ使えない。JSPは近々導入予定だが。