(tap) syntax question added by ScaryMonster on Tue Jan 20 22:04:37 2015

(define-syntax tap
  (syntax-rules ()
    ((tap (verb)) 
     (begin
       (display (tc 'green)) ; green
       (display "(")
       (display 'verb)
       (display ") : ")
       (tc-off)     ; off
       (display (verb))
       (newline)))
    ((tap (verb nouns ...)) 
     (begin
       (display (tc 'green)) ; green
       (display "(")
       (display 'verb)
       (map
         (lambda (noun)
           (display " ")
           (display noun))
         (list 'nouns ...)) ; the quote supresses noun expansion before display.
       (display ") : ")
       (tc-off)     ; off
       (display (verb nouns ...))
       (newline)))
    ((tap expr) 
     (begin
       (display (tc 'green)) ; green
       (display 'expr)
       (display " : ")
       (tc-off)     ; off
       (display expr)
       (newline)))
    ((tap expr ...) 
     (tap expr)
     (tap ...)
     )
    ))