> (define saved-cont #f) > (call-with-output-file* "file.txt" (lambda (out) (let/cc cont (set! saved-cont cont)) (fprintf out "hello\n")) #:exists 'append) > (saved-cont) fprintf: output port is closed
> (call-with-continuation-barrier (lambda () (call-with-output-file* "file.txt" (lambda (out) (let/cc cont (set! saved-cont cont)) (fprintf out "hello\n")) #:exists 'append))) > (saved-cont) continuation application: attempt to cross a continuation barrier
no subject
Date: 2011-12-14 08:09 am (UTC)Вот суть проблемы:
А вот как она решается с помощью барьера: