1
我遇到了n元函數的問題,例如=,<等。我試圖實現=首先。我所擁有的是以下(這不是很多)。Scheme:重新定義內置函數
(define builtin-= =)
(define (b= x y) (builtin-= x y))
(define (= . z)
(if (null? z) #f
(b= (car z) (apply = (cdr z)))))
然而,這導致在任一無限遞歸或堆溢出當我運行(= 2 3)或任何其它類似的呼叫。
我認爲你正在實現`equal?`,而不是`=` – erjiang 2010-12-05 00:55:42