我知道cons是为了构建对,比如(cons 2 (cons 3 empty)),但我不明白这里使用consafter的代码empty。不是cons为数字而建的吗?怎么能cons接受2个论点?如果他们可以接受 2 个论点,它如何评估它们?有人可以请翻译后的代码[(empty? lst) empty]吗?
(define (removed2 lst)
(cond
[(empty? lst) empty]
[(not (member? (first lst) (rest lst)))
(cons (first lst) (removed2 (rest lst)))]
[else (removed2 (rest lst))])