From: Dice Date: 2010-06-16T08:23:15+09:00 Subject: [ruby-dev:41616] Re: 質問・提案:cgi.rbの後継となるライブラリについて 藤岡さん、かくたにさん、返信ありがとうございます。 私も、普通のライブラリであれば「gemで入れるべき」で済むことだと思います。 ただ、CGIに関しては、それでは済ませられない特殊事情があるのです。 まず、初心者がRubyでCGIプログラミングをやりたいといった場合には 「レンタルサーバーでCGIを動かしたい」という目的を持った人が少なくないのではないかと思います。 となると、専用レンタルサーバーやVPSならともかく 一般的な共用レンタルサーバーで、gemによるRackなどのインストールを行うのは困難です。 そのため、CGIプログラムを共用レンタルサーバー上で動かすための選択肢は 1. 標準添付のCGIライブラリを使う 2. 別のCGIライブラリ(Rackなど)をgemなしで直接ダウンロードし、サーバー上にアップロードして使う のどちらかとなります。 このうち2の手間を考えると、初心者であれば 1を選ぶ人も少なくはないでしょうし そもそも、標準添付のCGIライブラリの他に「別のCGIライブラリ」が存在することに気付かない人も多いでしょう。 (私もwebrick/cgiの存在を知ったのは、Rubyを始めてから半年〜1年くらい後でした) 以上の理由から、新しいCGIライブラリを標準添付にすることは RubyGemsが広まっている現在においても、重要なことだと考えます。 「gemのRackが標準のRackを上書きしてしまう」「バージョンアップが難しくなる」と言う問題に対しては Rackの機能を縮小した、別名(例:TinyRack, CGIRack)のライブラリを作り それのみを標準添付することによって対処できるのではないでしょうか? こうすることで、gem経由でバージョンアップしたいときには改めてRackを入れてもらう、という振り分けができます。 -- Dice tetradice@gmail.com