Столкнулся с такой проблемой:
функция
(define (f . x)
(if (<= (length x) 2)
(car x)
(f (cdr x)))
по идее должна вывести последний элемент списка, но она всегда возвращает cdr от первоначального x, т.о. функция вызывается только 1 раз и завершается. Почему?