まつもと ゆきひろです. In message "[ruby-list:2158] [Req] pack/unpack" on 97/02/18, Keiju ISHITSUKA <keiju / shljapan.co.jp> writes: |けいじゅ@SHLジャパンです. |通信プロトコルなどでは不定長のデータはその繰り返しをプロトコルの中に入 |れることがい多いと思います. ま,それはそうなんですけど.socketのメソッドに入れることには どうも抵抗があります.一応,rubyの機能拡張の基準は * 汎用である * 他の機能の組合せで実現できない * 上位互換性がある * 実現があまり大変でない(と嬉しい) になっています.この基準で今回の提案を考えると * 汎用ではないことはない(ちょっと限定されますが) * 他の機能の組み合わせで実現できる(このプロトコル用のクラ スを作れば良いような). * 石塚さんの提案の実装にはpackと同様の機能を再実装する必要 がありそう. という理由であまり乗り気ではありません.今回の場合それだけの 苦労を(私がですけど ^^;;;)するよりは, def dataread(io) len, = io.read(2).unpack("n") return io.read(len) end というメソッドを作った方がよっぽど良いと思うからです. まつもと ゆきひろ /:|)