diff --git a/beautiful-racket-demo/basic-demo/parse-stx.rkt b/beautiful-racket-demo/basic-demo/parse-stx.rkt new file mode 100644 index 0000000..4523e03 --- /dev/null +++ b/beautiful-racket-demo/basic-demo/parse-stx.rkt @@ -0,0 +1,15 @@ +#lang br/quicklang +(require "parser.rkt" "tokenizer.rkt") + +(define (read-syntax path port) + (define parse-tree (parse path (make-tokenizer port path))) + (strip-bindings + #`(module basic-parser-mod basic-demo/parse-stx + #'#,parse-tree))) +(module+ reader (provide read-syntax)) + +(define-macro (parser-only-mb PARSE-STX) + #'(#%module-begin + PARSE-STX)) +(provide (rename-out [parser-only-mb #%module-begin])) +(provide syntax) \ No newline at end of file