For some reason the below program returns false: #lang racket (define g #f) (define p (make-continuation-prompt-tag)) (define (t) (let ([a (cons 1 2)]) (call-with-composable-continuation (λ (k) (set! g k)) p) a)) (call-with-continuation-prompt t p) (eq? (call-with-continuation-prompt g p) (call-with-continuation-prompt g p))
This happens with call/cc as well. From my understanding a should be allocated before the continuation is captured, so the two calls to g should return the same cell. If I remove the prompt tag the program returns true. Anyone have any clue whats going on or how to fix? --Spencer
____________________ Racket Users list: http://lists.racket-lang.org/users