trace parser pasted by DerGuteMoritz on Sat May 3 17:17:39 2014

(define (trace name parser)
  (bind parser (lambda (x)
                 (pp (list name x))
                 (result x))))

advanced parser trace added by DerGuteMoritz on Sat May 3 17:36:36 2014

(define (trace name parser #!optional trace-failure?)
  (any-of (bind parser (lambda (x)
                         (pp (list 'success name x))
                         (result x)))
          (lambda (in)
            (when trace-failure?
              (pp (list 'fail name in)))
            #f)))