Jun Inoue
jun.l****@gmail*****
2006年 5月 31日 (水) 15:57:07 JST
YamaKen <yamak****@bp*****> writes: > 再々編されたstorage-compact.hを見てみました。細かい部分で色々手 > を入れたので、まずいところがあったら指摘してください。 特に問題は見当たりませんが、l_freelist が ScmObj というのは疑問。この list にぶら下がってるのはあくまで cell であって object location ではな いので conceptual にも ScmCell* が妥当だと思います (別に performance のためだけに変更したわけじゃありませんよ)。 実装面で言っても、ScmObj に特殊な encoding rule を採用するにしても初期 化時に dereference がどうせ要るし、cell の位置を特定する必要があるわけ で。それに sweep して freelist に追加するときも手元にあるのは pointer で、その際に初期化しようとすると、何 object として初期化していいかわか らないという catch-22 に嵌まるかもしれないので。 > それと以下の宣言ですが、SCM_MISC_XALIGN(3)をSCM_MISC_XALIGN(2)に > 変更してしまって良いでしょうか? よいです。後から数値を減らすのは簡単だし、とりあえず、みたいな感じで 3 にしといただけなんで。