眠いけど忘れないうちにメモしとこ。
id:xibbarさんが札幌の道中にCGIとRackのことを話してたので、WEBrick::CGIっていうのがあるんですよとか説明してるうちに大昔のことを思い出しました。
10年くらい前にDivっていうのががあって(私は未だに使っているけども)、その後WEBrickと出会ってTofuを書いた(ような気がする)。
最初のDivはCGIを使っていたんだけど、WEBrickのサーブレットとどっちでも動くような層が欲しくなってDivのセッション管理部分から独立するようにTofuができた。Tofuはセッション管理が目的だけど、Webサーバとのインターフェイスの違いを吸収する係でもあったんだ。Contextとかいうのがたぶん界面になるクラス。当面はCGIとWEBrickのサーブレットを対象としてて必要になったら増やす作戦。でもその後両者の差異を全部吸収するのがしんどくなって須藤社長から叱られたりするうちにやる気がなくなって、WEBrickがCGIになってくれよー、とか念じていたらnotwork方面の神々がWEBrick::CGIを提供してくれました。というわけで私がやりたかったWebサーバとのインターフェイスの違いを吸収する係を自分で用意する必要がなくなってハッピーになったのでした。ちゃんちゃん。
使ったことないけど、RackはRackですばらしいと思うので否定するつもりはないです。機能がダブる部分があろうがなかろうが、書きたいものを書くべきだっ!