diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2013-06-27 19:23:35 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2013-06-27 19:23:35 +0200 |
commit | 096dfb84f6ca774c7f241b9ea446b510bbbccaf5 (patch) | |
tree | b0997e6490fd02641a615b70ab276e0d71b47b94 /scheme/racket/geiser | |
parent | bc3d5897f789de9afdf5d4f7aab48df8566bebf9 (diff) | |
download | geiser-chez-096dfb84f6ca774c7f241b9ea446b510bbbccaf5.tar.gz geiser-chez-096dfb84f6ca774c7f241b9ea446b510bbbccaf5.tar.bz2 |
Racket: not loading errortrace by default
The new submodules and errortrace interact badly, for what i've seen.
In particular, even with the submodule[+*] loading correctly, its
namespace doesn't have all identifiers bound, and new ones seem to
appear in the bindings lists (things like a.1 or b.2, when a and b are
the actual identifiers defined inside the module).
Since moreover someone mentioned in the devel ML that errortrace is in
general terms buggy, i guess we can leave without it for the time
being.
Diffstat (limited to 'scheme/racket/geiser')
-rw-r--r-- | scheme/racket/geiser/enter.rkt | 5 | ||||
-rw-r--r-- | scheme/racket/geiser/startup.rkt | 2 | ||||
-rw-r--r-- | scheme/racket/geiser/user.rkt | 13 |
3 files changed, 8 insertions, 12 deletions
diff --git a/scheme/racket/geiser/enter.rkt b/scheme/racket/geiser/enter.rkt index 0ef9ac5..7416c46 100644 --- a/scheme/racket/geiser/enter.rkt +++ b/scheme/racket/geiser/enter.rkt @@ -67,9 +67,7 @@ (list 'file (or (and m (mod-load-path m)) path-str)))) (define (add-paths! m ps) - (let* ([name (mod-name m)] - [pm (if (pair? name) (lambda (p) (cons p (cdr name))) (lambda (p) p))]) - (for-each (lambda (p) (hash-set! loaded (pm p) m)) ps))) + (for-each (lambda (p) (hash-set! loaded p m)) ps)) (define (resolve-paths path) (define (find root rest) @@ -99,7 +97,6 @@ (parameterize ([compile-enforce-module-constants #f]) (compile e))) (lambda (ext loader?) (load-extension ext) #f) - #:submodule-path (if (pair? name) (cdr name) '()) #:notify (lambda (chosen) (notify re? chosen)))) (define ((make-loader orig re?) path name) diff --git a/scheme/racket/geiser/startup.rkt b/scheme/racket/geiser/startup.rkt index bf9293b..d766dcd 100644 --- a/scheme/racket/geiser/startup.rkt +++ b/scheme/racket/geiser/startup.rkt @@ -15,7 +15,7 @@ "Racket version 5.0 or better required (found ~a)" (version))) -(require errortrace) +;; (require errortrace) (require geiser/user) (init-geiser-repl) diff --git a/scheme/racket/geiser/user.rkt b/scheme/racket/geiser/user.rkt index d570a39..d8ac0b2 100644 --- a/scheme/racket/geiser/user.rkt +++ b/scheme/racket/geiser/user.rkt @@ -29,8 +29,8 @@ (define (do-enter mod name) (visit-module mod) - (current-namespace (module->namespace mod)) - (last-entered name)) + (last-entered name) + (current-namespace (module->namespace mod))) (define (file-mod? mod) (and (list? mod) @@ -61,9 +61,6 @@ [(submod-path mod) => (lambda (m) (do-enter m m))] [else (module-error stx mod)])) -(define orig-loader (current-load/use-compiled)) -(define geiser-loader (module-loader orig-loader)) - (define (geiser-eval) (define geiser-main (module->namespace 'geiser)) (define (eval-here form) (eval form geiser-main)) @@ -120,9 +117,11 @@ (define (geiser-prompt-read prompt) (make-repl-reader (geiser-read prompt))) +(define (geiser-loader) (module-loader (current-load/use-compiled))) + (define (init-geiser-repl) (compile-enforce-module-constants #f) - (current-load/use-compiled geiser-loader) + (current-load/use-compiled (geiser-loader)) (preload-help) (current-prompt-read (geiser-prompt-read geiser-prompt)) (current-print maybe-print-image)) @@ -132,7 +131,7 @@ (current-input-port in) (current-output-port out) (current-error-port out) - (current-load/use-compiled geiser-loader) + (current-load/use-compiled (geiser-loader)) (current-prompt-read (geiser-prompt-read geiser-prompt)) (current-print maybe-print-image)] (preload-help) |