www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 32a717c24332296f6ed2c80ba98e7ca8845bd49d
parent f57b1ecd06e82a1095a3a74cdfe9b17b75c1dd9c
Author: Georges Dupéron <georges.duperon@gmail.com>
Date:   Thu, 31 Mar 2016 13:27:54 +0200

Fixed GH issue #3 (again)

Diffstat:
Mlang/reader.rkt | 1+
Mprivate/run-interactions.rkt | 17+++++++++--------
Mtest/meta.rkt | 2++
3 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/lang/reader.rkt b/lang/reader.rkt @@ -19,6 +19,7 @@ (variable-reference->namespace (#%variable-reference)))]) #`(mod nam lang (modbeg + (module code racket/base) (module* test racket/base (require repltest/private/run-interactions) (run-interactions (open-input-string #,(port->string in)) diff --git a/private/run-interactions.rkt b/private/run-interactions.rkt @@ -8,14 +8,15 @@ rackunit repltest/private/util) -(define (run-interactions in-rest varref) - (define res-mod - (module-path-index-resolve - (module-path-index-join '(submod "..") - (variable-reference->module-path-index varref)))) - (dynamic-require res-mod #f) - (define mod-ns (module->namespace res-mod)) - (run-interactions2 in-rest mod-ns)) +(define-syntax-rule (run-interactions in-rest varref) + (begin + (require (prefix-in "main-mod:" (submod ".."))) + (define res-mod + (module-path-index-resolve + (module-path-index-join '(submod "..") + (variable-reference->module-path-index varref)))) + (define mod-ns (module->namespace res-mod)) + (run-interactions2 in-rest mod-ns))) (define (run-interactions2 in-rest mod-ns) (let loop () diff --git a/test/meta.rkt b/test/meta.rkt @@ -4,6 +4,8 @@ ;; gobbled-up by the preceeding read. (define x 0) (define (y) #R(- 3 2)) +(define-syntax (module->namespace stx) #'error) +(provide module->namespace) 'displayed (displayln "displayed too")