From: matz@... (Yukihiro Matsumoto) Date: 1997-03-29T13:19:20+09:00 Subject: [ruby-list:2491] Re: WWW library (Re: class design) まつもと ゆきひろです In message "[ruby-list:2482] WWW library (Re: class design)" on 97/03/29, GOTO Kentaro writes: |あすなろ後藤です. |僕は python のライブラリをちょっと使っただけですが, |仕様は悪くないと思います. |基本は HTTP, FTP, GOPHER, NNTP などのスキームが socket を |使ったオブジェクトとして実装されています. URL.open(url) は |url を解析してスキームを決定するわけです. トップダウンで考えると,まず URL.open(url) で基本的なメソッドを実装したオブジェクトを返すわけですね.と なると考えなくてはいけないのは,その返って来るオブジェクトが 実装すべきメソッドはなんであるかですね. pythonの場合はread(), readline(), readlines(), fileno(), close(), info()を実装しているようですから,こちらもその程度 は実装しないといけないでしょうね.filenoは要らないかな? んで,各スキームのハンドラを書かないといけないわけですが,ス キーム毎にプロトコルも違うし,proxyのこともありますし,なか なかつらいかも.とりあえずはMMMのようにはhttp用のハンドラだ け用意して,他のスキームはproxyでhttpに変換してもらっても良 いかも知れません. |httpサーバーを書く |場合には(METAやSSIのために) HTML も実装されている必要があると |思いますが, それなら SGML もある程度扱えるようにしておく |必要があるので(というか個人的には HTML3.2 の次は XML が |はやると思うので)しんどそうです. いずれは欲しいんですけど. |# SGML を扱うための一連の道具は欲しいなぁ. (ぼそっ) いろいろ欲しいものはありますね. |しかし, ruby でWWWブラウザを書くというのは憧れます. いつかやりたいですねえ. |# そうなるとやっぱ safe.rb は欲しいやも :) プロセスごとsafeにする方法はあるんですけど,普通はそれじゃ使 いにくいですね. まつもと ゆきひろ /:|)