Chicken (Scheme)
スタックを使い切ってしまったら、ガーベッジコレクションを開始することができる。このガーベッジコレクションはC. J. Cheneyのコピー方式ガーベッジコレクション と同じものである。ただし、Chickenでは、Cコンパイラの実装に依存するCのスタックフレームをコピーせず、Schemeオブジェクトのみをコピーする。
Schemeで使うヒープをすべて挙げると、新しく作成されたオブジェクトが置かれるCのコールスタックと、ガーベッジコレクタが必要なオブジェクトをコピーする先の2つのヒープからなり、この3つの領域で世代別ガーベッジコレクタを形成する。この方式によってメモリ確保を必要とする多くの操作において、高速なCのスタックを利用できる。また、第一級の継続の呼び出しも、単純なC言語の関数(関数ポインタ)の呼び出しと同じ手順でできる。
Schemeの仕様で末尾再帰呼び出しの最適化が要求されていることについて、前述の論文では「We thus achieve the spirit, if not the letter, of ANSI Scheme's tail-recursion law.」とまとめている。