[#17276] blocks and local variables — Takaaki Tateishi <ttate@...>
立石です.
まつもと ゆきひろです
At Mon, 3 Jun 2002 06:26:56 +0900,
まつもと ゆきひろです
なかだです。
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
In article <1023423387.175193.27185.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
Yukihiro Matsumotoさんの
まつもと ゆきひろです
なかだです。
前田です。
At Fri, 7 Jun 2002 13:23:37 +0900,
まつもと ゆきひろです
Yukihiro Matsumotoさんの
まつもと ゆきひろです
Yukihiro Matsumotoさんの
なかだです。
nobu.nakada@nifty.ne.jpさんの
まつもと ゆきひろです
Yukihiro Matsumotoさんの
まつもと ゆきひろです
Yukihiro Matsumotoさんの
原です。
原です。
なかだです。
原です。
どうも西尾です。
なかだです。
At Sun, 16 Jun 2002 10:40:40 +0900,
なかだです。
At Sun, 16 Jun 2002 12:24:00 +0900,
なかだです。
At Sun, 16 Jun 2002 16:57:13 +0900,
なかだです。
どうも西尾です。
まつもと ゆきひろです
[#17315] Re: mswin32 での config.status の自動生成 — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#17327] irb 0.9 alpha — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
けいじゅ@日本ラショナルソフトウェアです.
けいじゅ@日本ラショナルソフトウェアです.
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
[#17367] Ruby bcc32 on Win32 版のコミットについて — 小西 弘将 <konishih@...6.so-net.ne.jp>
小西 弘将です。
まつもと ゆきひろです
小西 弘将です。
こんにちは、なかむら(う)です。
小西 弘将です。
[#17384] avoid VC++ warnings — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#17392] [mswin32] exporting needless string literal — Tietew <tietew-ml-ruby-dev@...>
なかだです。
[#17393] [mswin32] static linked exts — Tietew <tietew-ml-ruby-dev@...>
[#17421] broken string when unterminated "#{". — WATANABE Hirofumi <eban@...>
わたなべです。
まつもと ゆきひろです
わたなべです。
In article <1023943870.232495.9282.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1023945463.297286.10112.nullmailer@picachu.netlab.jp>,
なかだです。
まつもと ゆきひろです
In article <1023987024.717469.15784.nullmailer@picachu.netlab.jp>,
なかだです。
まつもと ゆきひろです
In article <1024642728.541545.22623.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
In article <200206220646.g5M6kPY04591@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
In article <200206230606.g5N66RY15961@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
まつもと ゆきひろです
In article <1024667757.665595.25808.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1024750854.951300.30306.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1024887804.945188.6501.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1024895400.920419.6574.nullmailer@picachu.netlab.jp>,
[#17430] return value from methods of Array's subclass — "Shin'ya Adzumi" <adzumi@...>
あづみです。
あづみです。
まつもと ゆきひろです
あづみです。
[#17446] ternary operator and char literal (Re: parse error with `true || break ? 0 : 1' (PR#261)) — nobu.nakada@...
なかだです。
まつもと ゆきひろです
なかだです。
In article <200206160226.g5G2QO228336@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
In article <200206160749.g5G7nI231269@sharui.nakada.kanuma.tochigi.jp>,
まつもと ゆきひろです
[#17471] break from proc-closure — m_seki@...
まつもと ゆきひろです
In article <1033663928.287610.25914.nullmailer@picachu.netlab.jp>,
なかだです。
[#17475] String#crypt always returns tainted string — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
[#17513] __END__ in literal — nobu.nakada@...
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
In article <200206211121.g5LBLl211556@sharui.nakada.kanuma.tochigi.jp>,
[#17579] Re: [ruby-cvs] ruby: * dln.c: remark definition rb_loaderror(). — WATANABE Hirofumi <eban@...>
わたなべです。
[ruby-dev:17533] Re: blocks and local variables
原です。
>なかだです。
>'_'で始まる変数はブロックローカルにするとか。
'!' で終わる変数をブロックローカルにするのは?
既に似た案があるのは承知ですが、見た目が違うのでもう一度。
こういうのはいかが?
(0)今までのローカル変数に対しては互換とする。
(1)ブロックローカル変数の名前には ! を使う。
def foo
yield 1
end
x!, y! = 0, 0
foo { |x!|
p [x!, y!] #=> [1, 0]
y! = 1
}
p [x!, y!] #=> [0, 0]
(2)外側のブロックローカル変数への代入は := を使う。
x! = 0
foo {
x! := 1
}
p x! #=> 1
(3):= がアクセスする定義済みブロックローカル変数は、外で最も近いもの。
x! = 0
foo {
x! = 1
x! := 10
p x! #=> 1
foo {
foo {
x! := 3
}
p x! #=> 3
}
p x! #=> 3
}
p x! #=> 10
# x! := -1 #=> NG
(4)未定義ブロックローカル変数と未定義ローカル変数に対する
ブロック内部における := は、トップレベルでの定義と解釈する。
foo {
t! = 1
t = 1
foo {
t!, u!, t, u := 2, 2, 2, 2
p [t!, u!, t, u] #=> [2, 2, 2, 2]
}
p [t!, u!, t, u] #=> [2, 2, 2, 2]
}
#t! #=> undefined
#t #=> undefined
p [u!, u] #=> [2, 2]
(5)定義済みローカル変数に対する := は = と同値。
最後に
(6)隙を見て x と x! の記法の役割を交換する。:-)