在方案中,新的多重功能: (define (iter b a n)
(cond ((= b 0) n)
((even? b) (iter (/ b 2) (* 2 a) n))
(else (iter (- b 1) (/ (* a b) (- b 1)) (+ a (* a (- b 1)))))))
(define (mul b a)
(it
我知道functional programming有幾個定義。我認爲這是一個模糊的類別。我的個人定義接近'referential transparency'。 這個問題不是'函數式編程的定義是什麼?'。我們的假設是,我們所知道的功能性編程是一些不同界限的不同概念的抓包。 現在很神奇的書Structure and Interpretation of Computer Programscontains
我正在使用mit-scheme來通過SICP,昨天,我做了一些愚蠢的事情,並且我想知道是否有方法從它恢復,而不關閉REPL,然後開始再一次。 如果我定義一個非工作過程,使用與原始相同的名稱並打破一切,是否有一種'取消定義'的方法? (define (+ a b) (...junk))
我想'undefine'這個'+'並繼續原來的。