From 096dfb84f6ca774c7f241b9ea446b510bbbccaf5 Mon Sep 17 00:00:00 2001 From: Jose Antonio Ortega Ruiz Date: Thu, 27 Jun 2013 19:23:35 +0200 Subject: 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. --- scheme/racket/geiser/enter.rkt | 5 +---- scheme/racket/geiser/startup.rkt | 2 +- scheme/racket/geiser/user.rkt | 13 ++++++------- 3 files changed, 8 insertions(+), 12 deletions(-) (limited to 'scheme/racket') 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) -- cgit v1.2.3