K.Sasada's Home Page

こめんとのついか

こめんとこめんと!

message

please set comment :).

_29(Thu)

やっと GC などのバグの元を見つけた、ような気がする。


ここまで実装して、やっと cref / class の扱いがわかってきた。んで、やっとなんとか、実装方法がわかってきた。

んー、やっぱり cref はメソッド呼出しごとに切り替える他無いのか? んー。module_eval みたいなのさえなければ、こんな苦労しなくていいのに。

lfp と一緒に特別な何かとして格納してやれば、なんとかなるような気はするな。あー、やっぱりなんとかならなかった。

そして、ruby_class 相当も必要ってことだろうか。この辺は別に問題ないか。

うーん、フレームごとに cref を用意するべきだろうか。今 10 word でこれ以上増やしたくないんだよな。

フレームごと、じゃなくてメソッドフレームごとにしてみるのはどうだろうか。なんとなく、うまくいきそうな気がしないこともない。


Ruby Quiz.

Const = :top
class C
  Const = :C
end

C.instance_eval %{
  p Const
}
C.instance_eval{
  p Const
}
C.module_eval %{
  p Const
}
C.module_eval{
  p Const
}
C.class_eval %{
  p Const
}
C.class_eval{
  p Const
}
eval %{
  p Const
}
eval{
  p Const
}

If you can answer all outputs, You are a great Ruby Hacker.


頭の中がやっとまとまった。

これで行こう。これで問題ないはず。現在 $_, $~ のために lfp[-1] を用意(nil 初期化)しているが、ひとつ余計に nil 初期化したところで、速度的なオーバヘッドは皆無だろう。

よし、多分これで懸念は去った。

って、lfp[-1] をもっと有効活用すれば、コンパイラを一切いじらなくても対応できるな。RNode なので、nd_file をそれ用の領域にすれば問題無さそうだ。そうしてしまうかなぁ。しかし、ぎゅうぎゅうに詰めたものだ。


  1. Rails やろう!
  2. Ruby をインストールした!
  3. さて Rails でなんか作るぞ!

というとき、 Ruby または Rails の学習曲線的はどんなもんなんだろうか。


cvar は今、cref を見てるけど、ruby_class を見ないのはなぜだろう。


YARV がだんだんバグが少なくなっているのを見て、結構うれしい。それなりに動くようになっているような気がするので、試してもらえると助かります。signal 系と I/O 系がまだ手付かずだけど。


control frame stack は GC 領域にしたくなかったんだけど、しないとまずい、ということでするとにした。これを GC 対象にしたんだから、なんかもっと手が抜ける方法が思いつくかも。つかないかも...。


学校に来たので投票を更新。


ちょっとお正月風にしてみる。ちょっと早いけど。


好きにコメントを編集してください。ただし、あまり他の人のコメントを書き換えることは感心しません。



back

tton 記述が使えます。YukiWikiな記述してりゃ問題ありません。

「行頭に#code」 と、「行頭に#end」 で挟むと、その間の行は pre で囲まれます。プログラムのソースを書くときに使ってください。

例:

#code

(なんかプログラム書く)

#end

リンクは

[[なまえ|http://www.example.org]]

とか

[[http://www.example.org]]

で貼れます。

$Date: 2003/04/28 10:27:51 $