で、Church数
案の定よくわかんないよ><。
試しに動かそうとしてもクロージャが帰って来てどうにもよくわかんない。
しょうがないのでWebの情報を漁る。
404 Blog Not Found:TuringとChurchの狭間で,http://www.csus4.net/hiki/SICPReading/?%BA%B4%CC%EE,http://www23.atwiki.jp/selflearn/pages/16.html#id_e78ae615とかを調べてようやく手も足も出ない状態を抜けてきた。
(define zero (lambda (f) (lambda (x) x))) (define (add-1 n) (lambda (f) (lambda (x) (f ((n f) x))))) (define (inc n) (+ n 1)) (define one (lambda (f) (lambda (x) (f x)))) (define two (lambda (f) (lambda (x) (f (f x))))) (define (c-add a b) (lambda (f) (lambda (x) ((a f) ((b f) x)))))
でも確かにこれ何に使うのかよくわかんないです。写像から「正の数」が作れるってなかなか面白い概念ではあるけど。