From: Hidetoshi NAGAI Date: 2004-05-24T10:50:33+09:00 Subject: [ruby-dev:23587] Re: keyword argments (Ruby2.0 spec) 永井@知能.九工大です. From: matz@ruby-lang.org (Yukihiro Matsumoto) Subject: [ruby-dev:23585] Re: keyword argments (Ruby2.0 spec) Date: Mon, 24 May 2004 08:40:52 +0900 Message-ID: <1085355648.160119.9948.nullmailer@picachu.netlab.jp> > まつもと ゆきひろです > > In message "[ruby-dev:23584] Re: keyword argments (Ruby2.0 spec)" > on 04/05/24, Hidetoshi NAGAI writes: > うーん、一晩考えた結果は(3)か(4)だと思うようになりました。優 > しいのが(3)、厳しいのが(4)です。 > > (3) 引数リストの末尾に「=>」を使った形式の意味は従来通り。 > ライブラリはハッシュとキーワード引数の両方に対応するこ > とで、旧来のプログラムを救済できる。 > > (4) ブレースで囲まない「=>」を使った形式全体を禁止する。旧 > 来のRuby/Tkを使ったプログラムは全滅。 > > どうしましょうねえ。いくら互換性を気にしないと言っても、ある > 分野丸ごと全滅はやりすぎですかねえ。 なかなか悩ましいですねぇ... もし (3) ということになれば,Ruby/Tk に関しては従来との互換性を 保つようにライブラリの修正はします. でも,せっかくのメジャーバージョンアップであるにも関わらず, 文法にすっきりしない点を残してしまうのはイヤでしょうね. # この問題を抱えているのは Ruby/Tk だけでしょうか? 修正方法は単純とは言え,さすがに (4) は辛いことになりそうです. シンボルキー形式での記述も全滅になりますから,現在のほぼすべてと 言っていいほどが壊滅になります. もし (4) とせざるを得ないのであれば, (5) 現在の parser を流用してソースコードコンバータを作る. ブレースの挿入による Hash 化 ( できれば Hash 化とキーワード 引数化のいずれかを選択可能) とする. で,現在の parser の仕事は終了. Rite では心置き無く新しい parser とする. とか. 誰が作るかという話は別として... (^_^; -- 永井 秀利 (九工大 知能情報) nagai@ai.kyutech.ac.jp