From: arton Date: 2000-06-21T22:38:58+09:00 Subject: [ruby-list:23420] Re: ASP artonです。 いろいろテストしてくださってありがとうございます。 Yoshinori Tahara wrote: > > 田原@鎌倉です。 > snip > > としたところ、 > > RScript エラー '00000200' > uninitialized constant Module::Response > /ja/tahara/a/ruby.asp, 行 5 > n = 1 > ^ > > となりました。<% %> の外にあるものは <%= %> の中にあるものと同じ扱いを > しているのかもしれないと思い、 なるほど。ASPの実装って、結構、いい加減なんですね、と納得したり。 多分、ご想像の通りだと思います。(こちらの、行番号情報と、表示している行 の内容も、負けず劣らずいい加減ですみません。 ほとんどクイズですが、例外の理由文字列から推測してください。大体、行番号 は+2くらいされている勘定です) パーソナルWebサーバーで試してみたところ、Response.BlockWrite(数字)という 非公開の呼び出しに落ちるみたいです。 で、数字が、<% %>の外の部分のブロックに相当しているようです。 > > <%@ LANGUAGE=RubyScript %> > <%# > @Response.Write < > Asp in Ruby > >

#{'ruby'.capitalize}

> > > EOF > %> > > としたところ、うまくいきました。 ヒアドキュメントが使えるんですね。なかなか良さげな感じです。 > > > <%=構文は、ちょっと、制限とさせてください。(なんとなく、いけそうな気が > > してきたので、場合によっては改善します。2週間に1回くらい、僕のサイトを覗 > > いていただけますか?) > > 制限はるものの ASP に Ruby が使えることがわかりました。 > ありがとうございました。 > 今後もときどき、arton さんのサイトをのぞかせていただきます。 最初にホストとしてテストに使ったのが、IEで、移入されるオブジェクトが windowと小文字で開始されているため、インスタンス変数としたのですが、考え てみたら、定数もモジュールスコープを持つので、ActiveRubyScriptの内部で、 Response = @Response をオブジェクトの移入時、インスタンス変数の設定後に 呼び出せば、良さそうです。(ASPスクリプト自身の中だと、更にスレッドで回 りを囲まれているため、2度目以降の呼び出しでエラーとなるため、できないで す)で、今度の土日あたりに、修正します。(インスタンス変数での移入も残す ことになると思いますが)