Fixed tool dependences between htdp-langs, stepper, debugger

svn: r7385
This commit is contained in:
Ryan Culpepper 2007-09-19 17:48:41 +00:00
parent e3d4bed0fe
commit 26d15d5ec8
3 changed files with 38 additions and 22 deletions

View File

@ -33,7 +33,8 @@
;; and the user's namespace in the teaching languages ;; and the user's namespace in the teaching languages
"private/set-result.ss" "private/set-result.ss"
(lib "stepper-language-interface.ss" "stepper")) (lib "stepper-language-interface.ss" "stepper")
(lib "debugger-language-interface.ss" "mztake"))
(provide tool@) (provide tool@)
@ -875,16 +876,24 @@
answer) answer)
(define (stepper-settings-language %) (define (stepper-settings-language %)
(class* % (stepper-language<%>) (if (implementation? % stepper-language<%>)
(init-field stepper:supported) (class* % (stepper-language<%>)
(init-field stepper:enable-let-lifting) (init-field stepper:supported)
(inherit [dontcare1 stepper:enable-let-lifting?] (init-field stepper:enable-let-lifting)
[dontcare2 stepper:supported?] (define/override (stepper:supported?) stepper:supported)
[dontcare3 debugger:supported?]) (define/override (stepper:enable-let-lifting?) stepper:enable-let-lifting)
(define/override (stepper:supported?) stepper:supported) (super-new))
(define/override (stepper:enable-let-lifting?) stepper:enable-let-lifting) (class* % ()
(define/override (debugger:supported?) #f) (init stepper:supported)
(super-new))) (init stepper:enable-let-lifting)
(super-new))))
(define (debugger-settings-language %)
(if (implementation? % debugger-language<%>)
(class* % (debugger-language<%>)
(define/override (debugger:supported?) #f)
(super-new))
%))
;; rewrite-module : settings syntax -> syntax ;; rewrite-module : settings syntax -> syntax
;; rewrites te module to print out results of non-definitions ;; rewrites te module to print out results of non-definitions
@ -1358,12 +1367,13 @@
(define (phase2) (define (phase2)
(define htdp-language% (define htdp-language%
(stepper-settings-language (stepper-settings-language
((drscheme:language:get-default-mixin) (debugger-settings-language
(language-extension ((drscheme:language:get-default-mixin)
(drscheme:language:module-based-language->language-mixin (language-extension
(module-based-language-extension (drscheme:language:module-based-language->language-mixin
(drscheme:language:simple-module-based-language->module-based-language-mixin (module-based-language-extension
simple-htdp-language%))))))) (drscheme:language:simple-module-based-language->module-based-language-mixin
simple-htdp-language%))))))))
(add-htdp-language (add-htdp-language
(instantiate htdp-language% () (instantiate htdp-language% ()

View File

@ -17,7 +17,7 @@
"load-sandbox.ss" "load-sandbox.ss"
(lib "framework.ss" "framework") (lib "framework.ss" "framework")
(lib "string-constant.ss" "string-constants") (lib "string-constant.ss" "string-constants")
) "debugger-language-interface.ss")
(provide tool@) (provide tool@)
@ -30,9 +30,6 @@
(import drscheme:tool^) (import drscheme:tool^)
(export drscheme:tool-exports^) (export drscheme:tool-exports^)
(define debugger-language<%>
(interface () debugger:supported?))
(define (phase1) (define (phase1)
(drscheme:language:extend-language-interface (drscheme:language:extend-language-interface
debugger-language<%> debugger-language<%>

View File

@ -0,0 +1,9 @@
(module debugger-language-interface mzscheme
(require (lib "class.ss"))
(provide debugger-language<%>)
(define debugger-language<%>
(interface () debugger:supported?)))