0
發現這個功能在球拍的書境界:拍功能,是錯還是我失去了somethng
(define (my-filter pred lst)
(cond [(empty? lst) empty]
[(pred (first lst))
(cons (first lst) (my-filter (rest lst)))]
[else (my-filter (rest lst))]))
與調用它:
(my-filter (lambda (i) (> i 5)) `(1 2 3 4 5 6 7 8))
給出:
my-filter: arity mismatch;
the expected number of arguments does not match the given number
expected: 2
given: 1
arguments...:
'(2 3 4 5 6 7 8)
所以我把它改爲:
(define (my-filter pred lst)
(cond [(empty? lst) empty]
[(pred (first lst))
(cons (first lst) (my-filter pred (rest lst)))]
[else (my-filter pred (rest lst))]))
現在它工作正常。那麼,如果我在那裏錯過了任何東西,或者如果這本書錯了,我就會徘徊?
看起來像只是一個錯字 – jozefg
@jozefg我編輯了答案,我改名爲我的RKT我,過濾器2,因爲它與另一種相沖突(它們在同一個文件) –
與問題無關,但對逗號運算符的使用相當混亂。 – sepp2k