(define (f x)
(define-macro (bl)
'(if (> x 0 ) #t #f))
(bl)
)
(f 10)

racketでは動くけど、他の処理系ではやっちゃいけない?