This is the mail archive of the guile@cygnus.com mailing list for the guile project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Here's a very explicit version: ;;; A very simplistic version (define to-walker #f) (define to-user #f) (define (scopeWalkDemo3) (call/cc (lambda (c) (to-user c))) (let ((l (list 'cow 'horse 'pig ))) (do ((i 0 (+ i 1))) ((= i (length l))) (call/cc (lambda (c) (set! to-walker c) (to-user (list-ref l i))))))) (define (test3) (set! to-walker (call/cc (lambda (c) (set! to-user c) (scopeWalkDemo3)))) (do ((j 0 (1+ j)) (tmp #f)) ((>= j 3)) (write-line (list j v-demo)) (set! tmp (call/cc (lambda (c) (set! to-user c) (to-walker #f)))) (vector-set! v-demo j tmp)))