I'm actually surprised that PLT does not do the same. Most probably PLT's "load" is modeled on the REPL (i.e. it is a read-eval-print loop which simply takes its input from a file).
I changed the example to:
(module test mzscheme
(define (call/ccc x) (call-with-current-continuation x))
(define coco 1)
(begin (display "begin") (newline) (call/ccc (lambda (c) (set! coco c))) (display "again") (newline) (display "end") (newline) )
(coco 13) )
and loaded it with require. This time the result was the same as gambit-c.
________ Information from NOD32 ________ This message was checked by NOD32 Antivirus System for Linux Mail Servers. part000.txt - is OK http://www.eset.com