macro snarl added by sethalves on Wed Dec 3 20:10:54 2014
(define-syntax define-labeled-arg-macro (syntax-rules () ((define-labeled-arg-macro labeled-arg-macro-name (positional-macro-name (arg-name . arg-def) ...)) (define-syntax labeled-arg-macro-name (syntax-rules () ((labeled-arg-macro-name . kw-val-pairs) (let-syntax ((find (syntax-rules (arg-name ...) ((find k-args (arg-name . default) arg-name val . others) (next val . k-args)) ... ))) (next positional-macro-name () (arg-name . arg-def) ...)))))))) (define-labeled-arg-macro make-parser (make-parser/positional-args (NEW-LEVEL-SEED) (PI ()) ))