If I write a trivial loop using call/cc (call/cc (lambda (k) (define (loop) (let ([x (read)]) (if (eq? x '()) (k x) (loop)))) (loop)))
It does exactly what I expect. If I type anything but () it reads again, but if I type () it prints out '() and quits Welcome to DrRacket, version 5.1 [3m]. Language: racket; memory limit: 256 MB. hello <-- user input '() <-- user input () <-- user input '() <-- output > but if I change call/cc to call-with-composable-continuatiom I see '() printed twice Welcome to DrRacket, version 5.1 [3m]. Language: racket; memory limit: 256 MB. hello <-- user input () <-- user input '() <-- output '() <-- output > Why is this?
smime.p7s
Description: S/MIME cryptographic signature
_________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users