継続改善

引数をヒープ上の vector に積んでいたので、継続からの復帰で引数の数があわなかったりしていた。

(define cont #f)
(+ 5 (call/cc (lambda (c) (begin (set! cont c) 10))))
(cont 20)

例えば、(cont 20)を呼ぶと (+ 5 10 20)みたいに評価されて悲しい感じに。
引数はスタックにうまく積むことで回避できたよ。
次はコレクションクラスをいれかえよう。