まつもと ゆきひろです

In message "Re: [ruby-dev:33387] HashからStructを作る"
    on Sat, 26 Jan 2008 03:41:32 +0900, rubikitch / ruby-lang.org writes:

|HashからStructを作れたらいいなと思いました。

どういうAPIが良いと思いますか。例ではStructという名前の関数
を導入していますが、それが最善だと思いますか?

|「Kernel.#Struct」、「Struct.[]」、「Struct.new」の引数にHashを指定して
|作れるといいと思います。

「Kernel.Struct」、「Struct.[]」は新設になりますが、本当に新
しいメソッドが必要ですか?

「Struct.new」を拡張する場合、メンバーがひとつしかなければ意
味が曖昧になるのですが、どちらを選択すべきだと思いますか?
また、それによりプログラムがひとめでわからなくなる側面が増え
たりしませんか?

|理由は、
|* OpenStructはHashから作成できる。

OpenStructはHashですからね。固定メンバーのStructの場合、メン
バーとして存在しないkeyが指定されたらどうなるか、あるいは逆
に指定されないメンバーがあった場合どうするかを明確にしなけれ
ばなりませんね。

                                まつもと ゆきひろ /:|)