(define-module (src as) #:export (as) #:declarative? #f) (define (call-in-module thunk module) (let* ((curmod (current-module)) (_ (set-current-module (resolve-interface module))) (v (thunk)) (_ (set-current-module curmod))) v)) (define (load-with-interface path module-name) (call-in-module (lambda () (load path)) module-name)) (define (as what file) (load-with-interface file `(src as ,what)))