Thank you for your comment

Beau­tiful Racket / tuto­rials

jsonic/main.rkt
#lang br/quicklang
(module reader br
  (require "reader.rkt")
  (provide read-syntax))
1
2
3
4
#lang br/quicklang
(module reader br
  (require "reader.rkt")
  (provide read-syntax))
copy to clipboard
jsonic/reader.rkt
#lang br/quicklang
(require "tokenizer.rkt" "parser.rkt")

(define (read-syntax path port)
  (define parse-tree (parse path (make-tokenizer port)))
  (define module-datum `(module jsonic-module jsonic/expander
                          ,parse-tree))
  (datum->syntax #f module-datum))
(provide read-syntax)
1
2
3
4
5
6
7
8
9
#lang br/quicklang
(require "tokenizer.rkt" "parser.rkt")

(define (read-syntax path port)
  (define parse-tree (parse path (make-tokenizer port)))
  (define module-datum `(module jsonic-module jsonic/expander
                          ,parse-tree))
  (datum->syntax #f module-datum))
(provide read-syntax)
copy to clipboard
jsonic/reader.rkt
#lang br/quicklang
(require "tokenizer.rkt" "parser.rkt")

(define (read-syntax path port)
  (datum->syntax #f `(module jsonic-mod jsonic/expander
                       ,(parse path (make-tokenizer port)))))
(provide read-syntax)
1
2
3
4
5
6
7
#lang br/quicklang
(require "tokenizer.rkt" "parser.rkt")

(define (read-syntax path port)
  (datum->syntax #f `(module jsonic-mod jsonic/expander
                       ,(parse path (make-tokenizer port)))))
(provide read-syntax)
copy to clipboard
← prev next →