青山です。

On Fri, 3 Sep 1999 16:18:29 +0900,
"NAKAMURA, Hiroshi"  wrote:

> 例えば相手のUser-Agent(の管理者)が,
> うっかりFromの後ろに設定すべき値を空のままにしてしまった...
> とかくらい? まぁレアケースですし,

そうですね。やはりとりあえず現在は思い付かないですよね。

> > 追加。content_length, server_port は多くの場合数値として使われると思わ
> > れるので、Integer(ENV["CONTENT_LENGTH"]) のようにするという提案もあり
> > ますが、いかがでしょうか? 文字列として使いたい場合には to_s 等とする
> > 事にはなりますが。
> 
> なひはStringのままでいいと思います.今後新たなヘッダが増えるたびに,
> 数値のみフィールドかどうか判断して追加していくの,
> cgi.rb側としては大変じゃないでしょうか...
> またこれまでの「プログラマは要らん仮定をしないように」とも思っているので,
> 「一様に文字列」に一票です.

Ruby Workshop (楽しかったですね。まつもとさんの顔写真の載った本という
のも見付けられなかったので、会場ではじめてみました。)で、まつもとさん
と少しこの話をした時に、「環境変数と同じ動作なら、メソッドじゃなくても
いいのに。」という話がありました。

なるほど。それもそうですよね。そうすると、やはり上の USER_AGENT 等の件
は、nil ではなく(現在のままの) "" として、SERVER*PORT*,
CONTENT*LENGTH* あたりはポート番号、長さ、と、その名前から、数値として
返すのはいいかもしれまんね。

-----
Ruby 1.4.1 へ向けての対応項目
params, cookies は、常に Array のままで、デフォルトを [] が有力。
環境変数に対応するメソッドは(現状のまま)、nil を返す事は無く、"" が有力。
PORT, LENGTH 等、数値としてみなせそうな物は、数値として返す。(これは意
見数としては半々ぐらいで、数値の方が少し有力か)


-- 
青山 和光 Wakou Aoyama <wakou / fsinet.or.jp>