[#30872] segv when reentering into Fiber with callcc — sheepman <sheepman@...>
こんばんは、sheepman です。
ささだです。
遠藤と申します。
ささだです。
遠藤です。
ささだです。
まつもと ゆきひろです
In article <E1Hw9be-0002Rs-Qg@x31>,
まつもと ゆきひろです
[#30920] Integer#prime_division と Prime — TOYOFUKU Chikanobu <nobu_toyofuku@...>
豊福です。
[#30929] secrand.rb — "NAKAMURA, Hiroshi" <nakahiro@...>
-----BEGIN PGP SIGNED MESSAGE-----
In article <4669066C.2080307@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
In article <46694461.4060706@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
In article <46697C0B.8060402@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
In article <4669DAB0.4050705@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
In article <466AA73C.9030407@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
なかだです。
-----BEGIN PGP SIGNED MESSAGE-----
In article <466D5B1D.8030205@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
In article <469253E9.9010203@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
-----BEGIN PGP SIGNED MESSAGE-----
In article <4694338C.7090303@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
In article <4694E6A6.2060303@sarion.co.jp>,
-----BEGIN PGP SIGNED MESSAGE-----
なかだです。
-----BEGIN PGP SIGNED MESSAGE-----
なかだです。
-----BEGIN PGP SIGNED MESSAGE-----
[#30971] Linux/ia64で'ucontext_t' undeclared — akira yamada / やまだあきら <akira@...>
最近のRuby 1.9をLinux/ia64上でmakeしようとすると
まつもと ゆきひろです
Yukihiro Matsumoto さんは書きました:
まつもと ゆきひろです
Yukihiro Matsumoto さんは書きました:
まつもと ゆきひろです
In article <E1HygwQ-0001OA-4f@x31>,
ささだです。
[#30996] new block parameter rule — SASADA Koichi <ko1@...>
ささだです。
[#31002] ("a".."f").step(2) {|x| p x} — Tanaka Akira <akr@...>
string の range の step で引数が効かないように思います。
まつもと ゆきひろです
ささだです。
[#31028] rb_get_interned — Nobuyoshi Nakada <nobu@...>
なかだです。
[#31034] Re: [ruby-cvs:19815] Ruby:r12579 (trunk): * parse.y (rb_intern2): name may not be NUL-terminated. — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#31046] Conditional jump or move depends on uninitialised value(s) in TOPLEVEL_BINDING — Tanaka Akira <akr@...>
valgrind をかけたところとりあえず最初のが
ささだです。
[#31063] make error at bcc32 — "Nebata" <tnebata@...>
ねばたです。
[#31066] consts for gdb support — Nobuyoshi Nakada <nobu@...>
なかだです。
[#31068] $&;[] dumps core — "Yusuke ENDOH" <mame@...>
遠藤と申します。
ささだです。
遠藤です。
ささだです。
遠藤です。
[#31072] {*0} dumps core — "Yusuke ENDOH" <mame@...>
遠藤と申します。
ささだです。
[ruby-dev:30978] Re: Supporting Fiber
ささだです。 Yusuke ENDOH さんは書きました: > 長文失礼します。Lua と Modula-2 をちょっとだけ試してみたので報告します。 > はじめての Lua と Modula-2 なので間違いがあったらごめんなさい。 > 検証したコードは末尾に載せます。 > > > Lua の coroutine は semi-coroutine で、coroutine 間に親子関係がありました。 うう、そういえばそうでした。 > 実行を移すコマンドが二種類 (resume と yield) あります。 > resume で他の coroutine を駆動し、その coroutine が yield するのを待ちま > す。 > resume は親から子を、yield は子から親を駆動する感じです (親は子を選べま > すが、 > 子は親を選べません) 。 > coroutine が終了すると、その coroutine が yield したのと同じ動作をしまし > た。 > 親子関係を壊すような遷移 (子から親を resume する) はエラーになりました。 > 終了した coroutine を resume してもエラーでした。 Pythonと同じですね。 > Modula-2 の coroutine は純粋 (?) な coroutine で、coroutine 同士は対等で > す。 > 従って実行を移すコマンドは一種類 (TRANSFER) だけです。 > TRANSFER で他の coroutine を駆動します。TRANSFER した coroutine は他の > coroutine から TRANSFER されるまで絶対に動きません。 > coroutine が終了するとプログラムごと終了しました。 > > Lua 式と Modula-2 式のどちらがいいかは一長一短だと思います。 はい。 > 1.9 の Fiber は Lua と Modula-2 の中間 (やや Modula-2 寄り) にいる感じ > でしょうか。coroutine 終了時に yield するのは Lua っぽいですが、 > 実行を移すのが 1 種類だけのは Modula-2 っぽいです。 そのとおりです。その意図で作りました。 > Lua は resume と yield の区別によって coroutine の親子関係が保証されてお > り、 > coroutine の終了時の挙動 (親に戻る) が関数呼び出しっぽくてわかりやすいで > す。 > Modula-2 は親も子もなく実行はただ一本で、それが途切れたら全部終わり、と > いう、 > 乱暴な挙動ではありますが、これはこれで筋が通っていると思います。 > 1.9 の現状の Fiber はこのあたりが中途半端なので prev が変なところを > 指している感じがします。 中途半端ととるか、Ruby らしいいいとこ取りととるかは人による 感じでしょうかね。「親子関係をもったような何か」もやりやすい し、「対等な関係」を実現することも可能、というように作りました。 Lua や Python のように、機能を制限しちゃったほうが、やっぱり 幸せな人は多い気がしますねぇ。うーん、どうしようかなぁ。その場 合は、Fiber という名前は変えないといかんな。 > あと噂では、Simula は Lua 式と Modula-2 式の両方の機能を提供しているらしい > (しかしそのせいで非常に複雑な実装になっているらしい) です。 Siumula は調べてませんでした。これは興味深いですね。両方の機 能を、ってのは今の Fiber みたいなの、ということではないんです かね。 ------ ちょっと、コンストラクタによって上記意味が変わるのはどうだろ う、と考えてみたんですが、それはそれでわかりづらいですよねぇ。 他の言語を見てみると「Fiber(のようなもの)が終わる」ってい うのは「例外的な操作」なので、「気をつけてね」でもいいような気 はします。 -- // SASADA Koichi at atdot dot net