(define l '*intlist*) (define m '*intlist*) (define res '*intlist*) (define k '*intlist*) (define v '*intlist*) (define append-iter (lambda () (begin (set! k '()) (append-iter-aux)))) (define append-iter-aux (lambda () (if (null? l) (begin (set! v m) (apply-cont)) (begin (set! k (cons (car l) k)) (set! l (cdr l)) (append-iter-aux))))) (define apply-cont (lambda () (if (null? k) (begin (set! res v) 0) (begin (set! v (cons (car k) v)) (set! k (cdr k)) (apply-cont)))))