[ruby-list:658] Re: help for lambda

From:
Date: 1996-09-30 05:09:35 UTC
List: ruby-list #658
けいじゅ@SHLジャパンです. 

In [ruby-list :00644 ] the message: "[ruby-list:644] Re: help for
lambda ", on Sep/27 17:14(JST) matz@caelum.co.jp (Yukihiro Matsumoto)
writes:

>|何か冷たい返事ですねえ...
>ごめんなさい.ちょっと忙しいんで気が立っているかもしれない.

あともうすこしですから(今日で終り?) がんばってね. 

# とはいいつつ, 私の方も先週が原稿のfixだったし, メインのプロジェクト
# も忙しかったし, 先週は死にました. 

>Proc.newを再定義するのを忘れていました.とりあえずProc.newを
>lambdaかprocに置き換えてください.

はーい. やってみました.

そしたら, とんでもない? バグを発見しました!! これをバグというには可哀
想ですが SEGV で落ちるので...

class Foo
  break
end

で SEGVします. その他, retry などその関係の関数は全て落ちます.

ちなみに, 例のはbreakを再定義してとりあえずそれほど気分の悪くないもの
ができました. こんな感じです:

a = Foo.new
a.exception{
  a.break
}

という感じに使えるようになりました.

そのとき, 感じたのですが, イテレータブロック/lambdaにおけるbreak/...の
動きが難しいと感じました. イテレータブロックとlambdaでは大部動きが違う
んですね... 暇な時でいいですから, イテレータブロックとlambdaの動きの違
いをまとめてもらえますか?

# [ruby-list: 415]で一度整理してもらっていますが, lambda(proc)のことが
# あまり書かれていませんでした.

__
..........................................石塚 圭樹@SHLジャパン(株)...
------------->アドレス変わりました!! e-mail: keiju@shljapan.co.jp <----

In This Thread

Prev Next