2010-02-12から1日間の記事一覧

lisp的直積集合

appendを使わなくても書ける (define (cp . seqs) (define (cp1 xs acc) (fold (lambda (e r) (fold (cut acons <> e <>) r xs)) '() acc)) (let loop ((seqs seqs)) (match seqs [(xs) (map list xs)] [(xs . seqs*) (cp1 xs (loop seqs*))]))) reduceを使…

schemeで多変数関数

http://d.hatena.ne.jp/yatsuta/20100211 高階関数についての内容のようです。この日記に書かれた方法は、キーワード引数の原形のような気がしました。 数学が苦手なので、日記中のf+gがどうして5つの引数を取る関数になるのかよくわからないですが、 gauche…