diff --git a/beautiful-racket-demo/tacogram-demo/main.rkt b/beautiful-racket-demo/tacogram-demo/main.rkt index b5e13cd..f99a3e1 100644 --- a/beautiful-racket-demo/tacogram-demo/main.rkt +++ b/beautiful-racket-demo/tacogram-demo/main.rkt @@ -8,7 +8,7 @@ (for/list ([tok (in-port read-char ip)]) tok)) -(define (parse toks) +(define (parse src toks) (define parse-tree-datum (parse-to-datum toks)) (for/list ([leaf (in-list (cdr parse-tree-datum))]) (integer->char @@ -17,11 +17,15 @@ #:when (equal? val '(taco))) (expt 2 power))))) - (define (read-syntax src ip) (define toks (tokenize ip)) - (define parse-tree (parse toks)) + (define parse-tree (parse src toks)) (strip-context (with-syntax ([PT parse-tree]) - #'(module untaco racket - (display (list->string 'PT)))))) \ No newline at end of file + #'(module tacogram-mod tacogram-demo + PT)))) + +(define-macro (mb PT) + #'(#%module-begin + (display (list->string 'PT)))) +(provide (rename-out [mb #%module-begin])) \ No newline at end of file