2017-12-10から1日間の記事一覧

letrec と letrec*

R5RS 以前の letrec は実装に依存します。 R6RS でセマンティック・エラーになる書き方をしてみると…… (let ((a 4) (b 5)) (list (letrec ((a (begin (set! b 2) b)) (b (begin (set! a 3) a)) (f (lambda (t) (cons a b)))) (f #t)) (cons a b))) ;=> ((3 .…