|
|
@ -2,6 +2,16 @@
|
|
|
|
(require (for-syntax racket/base racket/syntax))
|
|
|
|
(require (for-syntax racket/base racket/syntax))
|
|
|
|
|
|
|
|
|
|
|
|
(define-syntax (eval-as-untyped stx)
|
|
|
|
(define-syntax (eval-as-untyped stx)
|
|
|
|
|
|
|
|
(syntax-case stx ()
|
|
|
|
|
|
|
|
[(_ exprs ...)
|
|
|
|
|
|
|
|
(with-syntax ([sym (generate-temporary)])
|
|
|
|
|
|
|
|
#'(begin
|
|
|
|
|
|
|
|
(module sym racket
|
|
|
|
|
|
|
|
(require rackunit txexpr)
|
|
|
|
|
|
|
|
exprs ...)
|
|
|
|
|
|
|
|
(require 'sym)))]))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(define-syntax (eval-as-untyped-safe stx)
|
|
|
|
(syntax-case stx ()
|
|
|
|
(syntax-case stx ()
|
|
|
|
[(_ exprs ...)
|
|
|
|
[(_ exprs ...)
|
|
|
|
(with-syntax ([sym (generate-temporary)])
|
|
|
|
(with-syntax ([sym (generate-temporary)])
|
|
|
@ -24,7 +34,8 @@
|
|
|
|
(define-syntax-rule (eval-as-typed-and-untyped exprs ...)
|
|
|
|
(define-syntax-rule (eval-as-typed-and-untyped exprs ...)
|
|
|
|
(begin
|
|
|
|
(begin
|
|
|
|
(eval-as-typed exprs ...)
|
|
|
|
(eval-as-typed exprs ...)
|
|
|
|
(eval-as-untyped exprs ...)))
|
|
|
|
(eval-as-untyped exprs ...)
|
|
|
|
|
|
|
|
(eval-as-untyped-safe exprs ...)))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(eval-as-typed-and-untyped
|
|
|
|
(eval-as-typed-and-untyped
|
|
|
|