Add more scribble forms that evaluate code and display the results.

original commit: 7e9dbded4c89c5e95945e2f91653fab0b58a0390
This commit is contained in:
Vincent St-Amour 2011-06-17 14:03:38 -04:00
parent ba61cf64e8
commit 01a237406a
2 changed files with 48 additions and 0 deletions

View File

@ -9,8 +9,11 @@
interaction0
interaction-eval
interaction-eval-show
racketblock+interaction
racketblock+eval (rename-out [racketblock+eval schemeblock+eval])
racketblock0+interaction
racketblock0+eval
racketmod+interaction
racketmod+eval (rename-out [racketmod+eval schememod+eval])
def+int
defs+int
@ -434,6 +437,16 @@
(syntax-case stx ()
[(H e ...) (syntax/loc stx (-interaction H e ...))]))
(define-syntax racketblock+interaction
(syntax-rules ()
[(_ #:eval ev name e ...)
(let ([eva ev])
(#%expression
(begin (interaction #:eval eva e) ...
(racketblock name e ...))))]
[(_ name e ...)
(racketblock+interaction #:eval (make-base-eval) name e ...)]))
(define-syntax racketblock+eval
(syntax-rules ()
[(_ #:eval ev e ...)
@ -444,6 +457,16 @@
[(_ e ...)
(racketblock+eval #:eval (make-base-eval) e ...)]))
(define-syntax racketblock0+interaction
(syntax-rules ()
[(_ #:eval ev name e ...)
(let ([eva ev])
(#%expression
(begin (interaction #:eval eva e) ...
(racketblock0 name e ...))))]
[(_ name e ...)
(racketblock0+interaction #:eval (make-base-eval) name e ...)]))
(define-syntax racketblock0+eval
(syntax-rules ()
[(_ #:eval ev e ...)
@ -453,6 +476,16 @@
[(_ e ...)
(racketblock0+eval #:eval (make-base-eval) e ...)]))
(define-syntax racketmod+interaction
(syntax-rules ()
[(_ #:eval ev name e ...)
(let ([eva ev])
(#%expression
(begin (interaction #:eval eva e) ...
(racketmod name e ...))))]
[(_ name e ...)
(racketmod+interaction #:eval (make-base-eval) name e ...)]))
(define-syntax racketmod+eval
(syntax-rules ()
[(_ #:eval ev name e ...)

View File

@ -84,18 +84,33 @@ Like @racket[interaction-eval], but produces an element representing
the printed form of the evaluation result.}
@defform*[[(racketblock+interaction datum ...)
(racketblock+interaction #:eval eval-expr datum ...)]]{
Combines @racket[racketblock] and @racket[interaction].}
@defform*[[(racketblock+eval datum ...)
(racketblock+eval #:eval eval-expr datum ...)]]{
Combines @racket[racketblock] and @racket[interaction-eval].}
@defform*[[(racketblock0+interaction datum ...)
(racketblock0+interaction #:eval eval-expr datum ...)]]{
Combines @racket[racketblock0] and @racket[interaction].}
@defform*[[(racketblock0+eval datum ...)
(racketblock0+eval #:eval eval-expr datum ...)]]{
Combines @racket[racketblock0] and @racket[interaction-eval].}
@defform*[[(racketmod+interaction datum ...)
(racketmod+interaction #:eval eval-expr datum ...)]]{
Combines @racket[racketmod] and @racket[interaction].}
@defform*[[(racketmod+eval name datum ...)
(racketmod+eval #:eval eval-expr name datum ...)]]{