0.9.3に入ったgeneratorについてはGauche:Generatorにまとめます。 部分継続?をつかったジェネレータについては、Scheme:部分継続:イテレータの反転を参照してください。 Scheme:初心者の質問箱から移動 doとwhileの違い?ミソはinc!?本当の理由正しいgeneratorは?やってみよう継続とdynamic-wind doとwhileの違い? 最近のEcmaScriptにはジェネレータという機能があります。それと同じような感覚で使えるものをSchemeで実装してみようとこんなものを書きました。 (define (make-generator proc) (define next #f) (lambda () (if (not next) (call/cc (lambda(break) (proc (lambda arg (call/cc (lambd