まつもと ゆきひろ@トヨタケーラムです.

In message "[ruby-list:208] Re: TUTORIAL - procedure object"
    on 96/02/27, 石塚圭樹 <keiju / csg.mes.co.jp> writes:
|けいじゅ@事開事.三井造船です. 

|別に在庫処分しなくていいのにと思いつつ. 難し過ぎるといってしまったもの
|です. 是非とも, ユーザガイドとして昇華させてあげてください.

あ,基本的にせっかちなものですから.とはいえ,明日は出張なの
で,このMLには出て来ません.

|>手続きオブジェクト
|
|手続きオブジェクトには引数を渡すことはできるのでしょうか?

できます.例えばこんな感じです.

 ruby> proc{|n| printf "0x%x\n"}.call(32)
 0x20

|あと, コンテキストは保存しているのでしょうか? それともしていない?

えっと,ローカル変数のところで説明しようと思ったんですけど,
ローカル変数は保存しています.しかし,Smalltalkのような呼び
出しスタックは保存していません.手続きオブジェクトの中から
returnしようとすると例外が発生します.

Lispのclosureではあるが,Schemeのcontinuationではないという
表現で分かる人もいるかも知れません.

                                まつもと ゆきひろ /:|)