yarv-dev:22
From: SASADA Koichi <ko1 atdot.net>
Date: Mon, 17 May 2004 15:58:59 +0900
Subject: [yarv-dev:22] Re: initialize block local variables
matz ruby-lang.org (Yukihiro Matsumoto) wrote :
[ [yarv-dev:20] Re: initialize block local variables ]
at Mon, 17 May 2004 13:23:56 +0900
> これはメソッドローカルにはなりませんが、実装は少しは楽にはな
> るでしょう。満足するほど楽になるかどうかは分かりませんが。
(ブロックパラメータ以外の)ブロックローカル変数を探さない
ですむ、くらいしか思い浮かびませんでした。クロージャのための
構造も従来どおりのものが必要になるでしょうし。
> * ローカル変数は原則的にメソッドローカル
> * ブロックパラメータはブロックローカル
> * 重複は許さない
>
> あと聞きたいことがありますか?
1. 「重複」とは、
i=1
iter{|i|
...
}
を許さない、ということでしょうか。
2. ブロックパラメータの渡し方
ブロックパラメータへの値の渡し方は、現状の多重代入とほぼ
同様の渡し方を踏襲するのでしょうか。それとも、この部分も整理
の対象になりますか。
それとも lambda で作った Proc か、ブロックか、で場合わけす
るような仕様になりますか。
新しく導入するキーワード引数もブロックパラメータに含まれる
のでしょうか。
3. yield や Proc#call にブロックを渡すことを許すのでしょうか
4. キーワード引数の評価順序ってなんか決まってますか
そもそもこのあたりの文法ってもう決まってます?
いろいろ書いてしまってすみません。
--
// SASADA Koichi at atdot dot net
//
--
ML: yarv-dev quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml
15 2004-05-17 04:14 [ko1 atdot.net ] initialize block local variables 16 2004-05-17 08:38 ┗[matz ruby-lang.org ] 17 2004-05-17 10:37 ┣[ko1 atdot.net ] 20 2004-05-17 13:23 ┃┗[matz ruby-lang.org ] -> 22 2004-05-17 15:58 ┃ ┗[ko1 atdot.net ] 23 2004-05-17 16:14 ┃ ┗[matz ruby-lang.org ] 24 2004-05-17 16:58 ┃ ┗[ko1 namikilab.tuat.a] 25 2004-05-17 17:27 ┃ ┗[matz ruby-lang.org ] 26 2004-05-17 18:09 ┃ ┗[ko1 atdot.net ] 27 2004-05-17 18:38 ┃ ┗[matz ruby-lang.org ] 21 2004-05-17 13:45 ┗[nobu.nokada softhome]