ささだです。

 ご意見ありがとうございます。

Shugo Maeda さんは書きました:
>> (1) そもそも、Ruby にこんな機能を加えていいですか?
>>
>>  とりあえず、Generator は大変書きやすかったです。
> 
> いいと思うのですが、Rubyレベルで継続を使って書かないのはパフォーマンスの
> ためですか?

 そうです。継続でのコンテキスト切り替えは VM スタックのコピー
が必要ですが、Fiber の場合、そこは VM スタックポイントの切り替
えで済むからです。マシンスタックのコピーは、どちらも必要なので
すが。

>> (3) API 名は適当でしょうか?
>>
>>  というか、適当じゃないと思います。Thread#pass との連想で Fiber#pass と
>> しましたが、「機能の連想で、スレッドに引きずられる」、「fib#pass で fib
>> に処理が移るとは思いづらい」などの話があると思います。
> 
> WindowsだとSwitchToFiber()なんですよね。
> とはいえFiber.switch_to(fib)はかっこわるいので、Fiber#runかなあ。
> どっちかというと、イメージ的に近いのはpassよりrunじゃないですかね。
> Thread#runとは必ず処理が移るかどうかという違いはあるわけですけど、
> passよりrunの方が処理が移る先がわかりやすいように思います。

 うーん、run は思いつきませんでした。なんとなく、最初の一回だ
けのメソッド名に見えるのは気のせいでしょうか。

-- 
// SASADA Koichi at atdot dot net