まつもと ゆきひろ@トヨタケーラムです.
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ではないという
表現で分かる人もいるかも知れません.
まつもと ゆきひろ /:|)