2007-06-01 メモリリーク? Gauche 末尾再帰とそうでない関数で、再帰の回数をうんと大きくしたときの実験をしていたときのこと。 (define (succ x) (if (= x 0) 1 (+ 1 (succ (- x 1))))) という関数をGauche*1で定義して、次のように実行 (succ 10000000) するとメモリ使用量がぐんぐん増えていって、何秒かしたら結果が表示されるんだけど、メモリ使用量が増えたまま減らない。なーぜー。 *1:version 0.8.10 [utf-8,pthreads]