(define (fib n) (if (<= n 2) 1 (+ (fib (- n 1)) (fib (- n 2))))) (define (rac lst) (if (= (length lst) 1) (car lst) (rac (cdr lst)))) (define (snoc e lst) (append lst (list e))) (define (rdc lst) (if (<= (length lst) 1) () (append (list (car lst)) (rdc (cdr lst)) ))) (define (pr lst) (if (null? lst) () (append (pr (cdr lst)) (list (car lst)))))