
updated to change in expansion of lexical variables many UI updates and tweaks improved syntax properties panel added expand-only and expand/hide added rudimentary textual stepper fixed PR 8395 by adding snipclass for hrule-snip fixed PR 8431: reductions and block splicing fixed PR 8433: handling unquote and macro hiding w/ errors in hidden terms svn: r5120
33 lines
861 B
Scheme
33 lines
861 B
Scheme
|
|
(module expand mzscheme
|
|
(require "model/trace.ss"
|
|
"model/hide.ss")
|
|
(provide expand-only
|
|
expand/hide)
|
|
|
|
(provide expand/step)
|
|
(define (expand/step . args)
|
|
(apply (dynamic-require '(lib "stepper.ss" "macro-debugger") 'expand/step)
|
|
args))
|
|
|
|
(define (expand-only stx show-list)
|
|
(define (show? id)
|
|
(ormap (lambda (x) (module-identifier=? id x))
|
|
show-list))
|
|
(expand/hiding stx show?))
|
|
|
|
(define (expand/hide stx hide-list)
|
|
(define (show? id)
|
|
(andmap (lambda (x) (not (module-identifier=? id x)))
|
|
hide-list))
|
|
(expand/hiding stx show?))
|
|
|
|
(define (expand/hiding stx show?)
|
|
(let-values ([(result deriv) (trace/result stx)])
|
|
(when (exn? result)
|
|
(raise result))
|
|
(let-values ([(_d estx) (hide/policy deriv show?)])
|
|
estx)))
|
|
|
|
)
|