Open2
Ribbon: インタプリタとして起動してみる

... というか一発完動で逆にびっくりなんだけど。。
GCを実装していないので起動するだけで16GiB消費する(グラフは終了時点まで撮っちゃってるので10GiBに見えるけど)。
完全bootstrap、つまりreaderやらcompilerやらをその場でSchemeソースから読んで、それを実行する形で実行すると:
real 1m19.522s
user 1m10.859s
sys 0m6.640s
起動に1分かかる。でも1分くらいで起動するのか。。完全bootstrapで起動するということは、既にインタプリタはセルフホストできる(他のSchemeの助けがなくても原理上開発できる)ということになる。
まぁエラー時のbacktraceすら無いので開発は今迄通りGaucheでやるけど。。

リファレンスカウントを実装
Ref → Unrefの順でやらないといけないのを徹底できていないケースがあったのでその辺も修正している。
多少遅くなった。まぁ処理量は増えるしこんなもんだろう。16GiB → 1GiB なのでメモリ消費量は減ってるけど、何かリークがあるかもしれない。そういうデバッグが辛いんだよなぁ。。
real 1m54.829s
user 1m53.843s
sys 0m0.640s