This is a plug-in for Qi-YACC that gives segment pattern-matching. <<...>> is a stuff matcher. (defcc <> <> := ;) (defcc ; ;) (defcc -*- := (if (number? -*-) [-*-] #\Escape);) (defcc <> :name <> := <>;) Examples: (compile [ghhghg 7 8 :name Mark Tarver]) [Mark Tarver] (compile [just some numbers 1 2 3/4 tum te tum]) [1 2 3/4]