GC

とりあえず普通の Mark&Sweep を実装し、文法が通るかどうか等の動作をテストする。そこから Incremental GCを実装し、テストを行う。GCの基本的なアルゴリズムとIncremental & Concurrent GCの考え方は、このページの勉強会資料が分かり易い。これは先日紹介した isbn:0471941484 の読書会資料である。いちおうこの本を見た限りでは湯浅アルゴリズムが良いように思われるけど、即決めるのは時機尚早だろう。もう少し新しめの文献を色々当たってみる必要がある。とはいえ結局GCアルゴリズムってそんなになくて、Reference Count + Mark&Sweepとか単なる組み合わせで問題解決を測ろうとしている流れっぽい。しかしそうすると、オブジェクトに持たせるGCの為の情報が増えるので、アルゴリズムを組み合わせるという方法は今回は取りたくない。後はスレッドを回す方法。Java 1.4だとMostly Concurrent Mark&Sweepを使用している。しかしスレッドは使いたくないのでやめておこう。移植性とか悪そう?ってイメージが有るので。

この人は近山研の人か。近山さんといえば和田研フォントキットが動いていた UtiLisp のオリジナルの作者さん。