26 lines
630 B
Racket
26 lines
630 B
Racket
#lang racket/base
|
|
(require racket/class
|
|
racket/contract
|
|
unstable/class-iop
|
|
"model/trace.rkt"
|
|
"view/interfaces.rkt"
|
|
"view/view.rkt")
|
|
|
|
(define (create-stepper deriv)
|
|
(define director (new macro-stepper-director%))
|
|
(define stepper (send/i director director<%> new-stepper))
|
|
(send/i director director<%> add-deriv deriv)
|
|
(void))
|
|
|
|
(define (expand/step stx)
|
|
(create-stepper (trace stx)))
|
|
|
|
(define (expand-module/step module-path)
|
|
(create-stepper (trace-module module-path)))
|
|
|
|
(provide/contract
|
|
[expand/step
|
|
(-> syntax? void?)]
|
|
[expand-module/step
|
|
(-> module-path? void?)])
|