() (with-fluids ((current-reader #f)) (save-module-excursion (lambda () (define (call/ec proc) (let ((tag (make-prompt-tag))) (call-with-prompt tag (lambda () (proc (lambda () (abort-to-prompt tag)))) (lambda (k) (values))))) ;; The initial environment when loading a module is a fresh ;; user module. (set-current-module (make-fresh-user-module)) ;; Here we could allow some other search strategy (other than ;; primitive-load-path), for example using versions encoded ;; into the file system -- but then we would have to figure ;; out how to locate the compiled file, do auto-compilation, ;; etc. Punt for now, and don't use versions when locating ;; the file. (call/ec (lambda (abort) (primitive-load-path (in-vicinity dir-hint name) abort) (set! didit #t))))))) (lambda () (set-autoloaded! dir-hint name didit))) didit))))))