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 %)
(if (implementation? % stepper-language<%>)
(class* % (stepper-language<%>) (class* % (stepper-language<%>)
(init-field stepper:supported) (init-field stepper:supported)
(init-field stepper:enable-let-lifting) (init-field stepper:enable-let-lifting)
(inherit [dontcare1 stepper:enable-let-lifting?]
[dontcare2 stepper:supported?]
[dontcare3 debugger:supported?])
(define/override (stepper:supported?) stepper:supported) (define/override (stepper:supported?) stepper:supported)
(define/override (stepper:enable-let-lifting?) stepper:enable-let-lifting) (define/override (stepper:enable-let-lifting?) stepper:enable-let-lifting)
(super-new))
(class* % ()
(init stepper:supported)
(init stepper:enable-let-lifting)
(super-new))))
(define (debugger-settings-language %)
(if (implementation? % debugger-language<%>)
(class* % (debugger-language<%>)
(define/override (debugger:supported?) #f) (define/override (debugger:supported?) #f)
(super-new))) (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
(debugger-settings-language
((drscheme:language:get-default-mixin) ((drscheme:language:get-default-mixin)
(language-extension (language-extension
(drscheme:language:module-based-language->language-mixin (drscheme:language:module-based-language->language-mixin
(module-based-language-extension (module-based-language-extension
(drscheme:language:simple-module-based-language->module-based-language-mixin (drscheme:language:simple-module-based-language->module-based-language-mixin
simple-htdp-language%))))))) 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?)))