2010-03-27から1日間の記事一覧

継続渡し形式

find-foldからfind-fold2への書き換えでいきなりつまずいてたけど、やっと理解できてきたかも。 指定した条件を満たす要素だけfoldするfind-foldは、素直に書くと以下のようになる。 (define find-fold (lambda (pred? proc seed lis) (cond ((null? lis) se…

継続渡しで実行を制御する

find-foldで済むものを、なぜ手間をかけてfind-fold2にするのか。 それは外から与えられるproc/contを少しいじるだけで、find-fold2の実行を制御できるからだ、と。 ということで、コード例をば。次のようなnextとbreakとadd/breakを定義して、 (define next…