SigScheme開発録 (66)

現状ではヒープサイズが増える一方なので compaction もしてみようかな、という話。

  • H. B. M. Jonkers. A fast garbage compaction algorithm. Information Processing Letters, 9(1):25--30, July 1979

HaskellYhcが参考にしているとの事で図書館でゲットしてコピーしてきた。ただちょっと心配なのがC Stack上に有るオブジェクトで、スタックの中身を書き換える or スタック上に有るオブジェクトはcompactionの対象にしないという二つの方法が有る。前者の場合はもう一度スタックを捜査する必要が有りそう。後者の場合はスタック上に有るオブジェクトを区別しないといけないので更に余分なgc bitが要りそうなのだが、これはstorage-compactにとっては許容出来ない。上手い落とし所が有れば良いのだけれど。