[#352] ruby 1.1a5 released — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

38 messages 1997/09/01
[#353] Re: ruby 1.1a5 released — keiju@... (石塚圭樹 ) 1997/09/01

[#354] Re: ruby 1.1a5 released — matz@... (Yukihiro Matsumoto) 1997/09/01

まつもと ゆきひろです

[#356] Re: methods [Re: ruby 1.1a5 released] — matz@... (Yukihiro Matsumoto) 1997/09/01

まつもと ゆきひろです

[#357] Re: methods [Re: ruby 1.1a5 released] — keiju@... (Keiju ISHITSUKA) 1997/09/01

けいじゅ@日本ラショナルソフトウェアです.

[#359] Re: methods [Re: ruby 1.1a5 released] — matz@... (Yukihiro Matsumoto) 1997/09/02

まつもと ゆきひろです

[#363] Re: methods [Re: ruby 1.1a5 released] — matz@... (Yukihiro Matsumoto) 1997/09/02

まつもと ゆきひろです

[#374] Re: methods [Re: ruby 1.1a5 released] — matz@... (Yukihiro Matsumoto) 1997/09/02

まつもと ゆきひろです

[#376] Re: methods [Re: ruby 1.1a5 released] — keiju@... (Keiju ISHITSUKA) 1997/09/02

けいじゅ@日本ラショナルソフトウェアです.

[#382] Re: methods [Re: ruby 1.1a5 released] — matz@... (Yukihiro Matsumoto) 1997/09/02

まつもと ゆきひろです

[#390] Re: methods [Re: ruby 1.1a5 released] — keiju@... (Keiju ISHITSUKA) 1997/09/03

けいじゅ@日本ラショナルソフトウェアです.

[#391] Re: methods [Re: ruby 1.1a5 released] — matz@... (Yukihiro Matsumoto) 1997/09/03

まつもと ゆきひろです

[#441] How to report a bug — takagi@... (TAKAGI Hiromitsu)

Bus error が出ました。

15 messages 1997/09/09

[#461] [Q] ruby-socket(mswin32) — Masaki Suketa <suke@...>

助田です

27 messages 1997/09/11
[#462] Re: [Q] ruby-socket(mswin32) — matz@... (Yukihiro Matsumoto) 1997/09/11

まつもと ゆきひろです

[#463] Re: [Q] ruby-socket(mswin32) — Masaki Suketa <suke@...> 1997/09/11

助田です

[#464] Re: [Q] ruby-socket(mswin32) — matz@... (Yukihiro Matsumoto) 1997/09/11

まつもと ゆきひろです

[#467] Re: [Q] ruby-socket(mswin32) — WATANABE Hirofumi <watanabe@...> 1997/09/11

わたなべです.

[#594] BUG?(marshal) — Masaki Suketa <suke@...>

以下のプログラムを実行した時に(3)と(4)で出力結果が違います。

17 messages 1997/09/30

[ruby-dev:584] Re: Tail recursion (Re: optimize (...))

From: "EGUCHI Osamu" <eguchi@...>
Date: 1997-09-30 04:10:56 UTC
List: ruby-dev #584
えぐち です

----------
> 差出人 : Yukihiro Matsumoto <matz@netlab.co.jp>
> 件名 : [ruby-dev:574] Re: Tail recursion (Re: optimize (...))
> 
> まつもと ゆきひろです
> 
> In message "[ruby-dev:570] Re: Tail recursion (Re: optimize (...))"
>     on 97/09/30, "EGUCHI Osamu" <eguchi@shizuokanet.or.jp> writes:
> 
> |えぐち です。
> 
> |このへんのバランスからして今の rb_eval() は
> |かなりの完成度にあると思うです。
> 
> いきあたりばったりの産物なんでそういわれると恥ずかしいです.

いきあたりばったりで、ここにたどり着く人のセンスってすごいですね。
#私は、速度上げようとかの煩悩ですぐ醜悪なコードにしちゃう。
#それっぽく思ったらマージを却下してください。

> |この方法でのパーサは、 break, next, redo などの行き先も
> |(たぶん2パスで)生成することが必要になりますね。
> 
> 飛び先を保持する手法はいくつもありますから,2パスは必要ない
> と思います.gotoはないんで,飛び先はあらかじめ決められますし
> ね.

そうですね、私も真っ先に、、2パスでないとだめかな、、
と思っては見たものの、これではコンパイル時間が長くなって
何の為にやるのかわかんなくなってしまいます。

バイトコードをファイル化するならいくらでもコンパイルに
時を裂けますけど。。。

>     とはいえ,ゆうべつらつらと考えてたんですが,イテレータと
> の絡みがあったりして,ことはそうは簡単ではないようです.ちゃ
> んと仮想機械(もどき)を設計しないと動かないみたい.

イテレータブロック中の break や next が有効ってことですか?
そーなんだろなやっぱり、、難問過ぎ!

入れ子のイテレータから例外で脱出する場合も厳しいですね。
(いまは例外もループ構造も setjmp だからいいけど)

#仮想 と もどき がいっしょに出てくると、いかがわしいですが(笑)
結局、rb_eval() から再帰を追い出すとバイトコードインタープリタ
の様な形に近づいていくようですね、仮想マシンかなぁ、、
たぶんこれは必然だとおもいます。

もちろん、今の eval.c に改良を与えて幾つかの問題を解決することは
出来ますので、短期的にはその方が幸せなような、、

	えぐち

In This Thread

Prev Next