[前][次][番号順一覧][スレッド一覧][生データ]

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]