You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
beautiful-racket/beautiful-racket-lib/br/main.rkt

31 lines
1.3 KiB
Racket

#lang racket/base
(require racket/provide racket/list racket/string racket/format racket/match racket/port racket/function
br/define br/syntax br/datum br/debug br/cond racket/class racket/vector br/reader-utils
(for-syntax racket/base racket/syntax br/syntax br/debug br/define br/datum))
(provide (all-from-out racket/base)
(all-from-out racket/list racket/string racket/format racket/match racket/port racket/function
br/syntax br/datum br/debug br/cond racket/class racket/vector br/define br/reader-utils)
(for-syntax (all-from-out racket/base racket/syntax br/syntax br/debug br/datum))
(for-syntax caller-stx with-shared-id)) ; from br/define
;; todo: activate at-exp reader by default
(provide evaluate)
(define-macro (evaluate DATUM)
#'(begin
(define-namespace-anchor nsa)
(eval DATUM (namespace-anchor->namespace nsa))))
(provide really-dynamic-require)
(define-macro (really-dynamic-require . ARGS)
#'(parameterize ([current-namespace (make-base-namespace)])
(dynamic-require . ARGS)))
(provide values->list)
(define-macro (values->list EXPR)
#'(call-with-values (λ () EXPR) list))
(module reader syntax/module-reader
#:language 'br
#:info br-get-info
(require br/get-info))