Blob


1 (define (test-case actual expected)
2 (newline)
3 (display "Actual: ")
4 (display actual)
5 (newline)
6 (display "Expected: ")
7 (display expected)
8 (newline))
10 (define (mystery x)
11 (define (loop x y)
12 (if (null? x)
13 y
14 (let ((temp (cdr x)))
15 (set-cdr! x y)
16 (loop temp x))))
17 (loop x '()))
19 ;; Explain what mystery does in general.
21 ;; mystery reverses the list x
23 (define v (list 'a 'b 'c 'd))
25 (define w (mystery v))
26 (test-case v '(a))
27 (test-case w '(d c b a))