Thank you for your comment

Beau­tiful Racket / explainers

exporter.rkt
#lang br
(define my-var 42)
(provide my-var)
1
2
3
#lang br
(define my-var 42)
(provide my-var)
copy to clipboard
exporter.rkt
#lang br
(provide my-var another-var third-var)
(define my-var 42)
(define another-var 96)
(define third-var 256)
1
2
3
4
5
#lang br
(provide my-var another-var third-var)
(define my-var 42)
(define another-var 96)
(define third-var 256)
copy to clipboard
exporter.rkt
#lang br
(provide (all-defined-out))
;; same as `(provide my-var another-var third-var)`
(define my-var 42)
(define another-var 96)
(define third-var 256)
1
2
3
4
5
6
#lang br
(provide (all-defined-out))
;; same as `(provide my-var another-var third-var)`
(define my-var 42)
(define another-var 96)
(define third-var 256)
copy to clipboard
exporter.rkt
#lang br
(provide + *)
1
2
#lang br
(provide + *)
copy to clipboard
exporter.rkt
#lang br
(provide (all-from-out br))
1
2
#lang br
(provide (all-from-out br))
copy to clipboard
exporter.rkt
#lang br
(module bad br
  (define bad-plus -)
  (provide (rename-out [bad-plus +])))

(require (submod "." bad))
(+ 42 42) ; 0 (!)
1
2
3
4
5
6
7
#lang br
(module bad br
  (define bad-plus -)
  (provide (rename-out [bad-plus +])))

(require (submod "." bad))
(+ 42 42) ; 0 (!)
copy to clipboard
bf-expander.rkt
#lang br/quicklang

(define-macro (bf-module-begin PARSE-TREE)
  #'(#%module-begin ; from `br/quicklang`
     PARSE-TREE))
(provide (rename-out [bf-module-begin #%module-begin]))
1
2
3
4
5
6
#lang br/quicklang

(define-macro (bf-module-begin PARSE-TREE)
  #'(#%module-begin ; from `br/quicklang`
     PARSE-TREE))
(provide (rename-out [bf-module-begin #%module-begin]))
copy to clipboard
← prev next →