Squeakでマターリ語りましょうや
■ このスレッドは過去ログ倉庫に格納されています
0599デフォルトの名無しさん
2009/03/28(土) 20:10:41590 の「違います」の意図が分かりかねるのですが、無名メソッドコンテキストがブロックコンテキストを
指しているなら、私は「ブロッククロージャの実行環境は無名メソッドコンテキスト」ということで
いいような気がします。そうならば #valueWithExit は成り立ちそうですか?
7. については BlockClosure にたとえば #valueWithExitValue を
valueWithExitValue
^self value: [:val | ^val]
…のように定義すれば、次のようにして nil 以外の任意の値を戻り値にすることができます。
[:exit | (1 to: 10) do: [:each | each = 5 ifTrue: [exit value: each]]] valueWithExitValue
このことは両者に違いのないことの参考になりますか?
■ このスレッドは過去ログ倉庫に格納されています