Fixed startup errors caused by tool dependencies (see PR 10125)

removed htdp-lang dependency on debugger
  removed deinprogramm dependency on stepper, debugger, and htdp-langs
  both still depend on test-engine tool, but only for execution
Probably apply to release branch, but needs review.

svn: r14119
This commit is contained in:
Ryan Culpepper 2009-03-16 06:25:31 +00:00
parent ff9ebbde05
commit cf87504e00
2 changed files with 48 additions and 17 deletions

View File

@ -177,6 +177,7 @@
(run-in-user-thread
(lambda ()
(read-accept-quasiquote (get-accept-quasiquote?))
(ensure-drscheme-secrets-declared drs-namespace)
(namespace-attach-module drs-namespace ''drscheme-secrets)
(namespace-attach-module drs-namespace deinprogramm-struct-module-name)
(error-display-handler teaching-languages-error-display-handler)
@ -244,6 +245,27 @@
(super-new)))
;; this inspector should be powerful enough to see
;; any structure defined in the user's namespace
(define drscheme-inspector (current-inspector))
;; FIXME: brittle, mimics drscheme-secrets
;; as declared in lang/htdp-langs.ss.
;; Is it even needed for DeinProgramm langs?
;; Only used by htdp/hangman teachpack.
(define (ensure-drscheme-secrets-declared drs-namespace)
(parameterize ((current-namespace drs-namespace))
(define (declare)
(eval `(,#'module drscheme-secrets mzscheme
(provide drscheme-inspector)
(define drscheme-inspector ,drscheme-inspector)))
(namespace-require ''drscheme-secrets))
(with-handlers ([exn:fail? (lambda (e) (declare))])
;; May have been declared by lang/htdp-langs tool, if loaded
(dynamic-require ''drscheme-secrets 'drscheme-inspector))
(void)))
;; {
;; all this copied from collects/drscheme/private/language.ss
@ -1051,24 +1073,31 @@
answer)
(define (stepper-settings-language %)
(class* % (stepper-language<%>)
(init-field stepper:supported)
(define/override (stepper:supported?) stepper:supported)
(define/override (stepper:render-to-sexp val settings language-level)
(parameterize ([pc:current-print-convert-hook (make-print-convert-hook settings)])
(set-print-settings
language-level
settings
(lambda ()
(stepper-convert-value val settings)))))
(super-new)))
(if (implementation? % stepper-language<%>)
(class* % (stepper-language<%>)
(init-field stepper:supported)
(define/override (stepper:supported?) stepper:supported)
(define/override (stepper:render-to-sexp val settings language-level)
(parameterize ([pc:current-print-convert-hook (make-print-convert-hook settings)])
(set-print-settings
language-level
settings
(lambda ()
(stepper-convert-value val settings)))))
(super-new))
(class %
(init stepper:supported)
(super-new))))
(define (debugger-settings-language %)
(class* % (debugger-language<%>)
(init-field [debugger:supported #f])
(define/override (debugger:supported?) debugger:supported)
(super-new)))
(if (implementation? % debugger-language<%>)
(class* % (debugger-language<%>)
(init-field [debugger:supported #f])
(define/override (debugger:supported?) debugger:supported)
(super-new))
(class %
(init [debugger:supported #f])
(super-new))))
;; make-print-convert-hook:
;; simple-settings -> (TST (TST -> TST) (TST -> TST) -> TST)

View File

@ -864,7 +864,9 @@
(init-field [debugger:supported #f])
(define/override (debugger:supported?) debugger:supported)
(super-new))
%))
(class %
(init [debugger:supported #f])
(super-new))))
;; filter/hide-ids : syntax[list] -> listof syntax
(define (filter/hide-ids ids)