2010/03/17

named let

相変わらず末尾再帰が苦手です。困ったときはfold, fold, fold。でもfoldだってなんでもできるわけじゃないですよね。
Twitter / いわた: fold「オレにだって……できないことぐらい…ある…」
そしてこれ↓を知らなかった事実。
;; named let構文
    (let name ((var expr)
               ...)
        body ...)

    ;; これは次のコードと等価
    (letrec ((name (lambda (var ...)
                      body ...)
             ))
      (name expr ...))

ちょいと試しに・・・
fold

letrec

named let

The Seasoned Schemer

0 件のコメント:

コメントを投稿