2014-10-30 80 views

回答

8

在Lisps中,'quote運算符的簡寫形式,它可防止對S表達式或符號進行評估。雖然x通常是一個變量,引用它變成一種輕量級的字符串。引號不是if語法的一部分。在你的情況下使用引號是沒有意義的。

此外,Lisps不使用中綴運算符。加法只是一個普通的函數,所有的東西,包括加法,都被寫成S表達式。因此,我們會寫(+ x 1)而不是x + 1

因此,我們的功能會再看看這樣的:

(define (number x) 
    (if (< x 4) 
     (+ x 1) 
     (* x 2)))