I start trying #parseq.

(defpackage #:apertium-stream-parser (:use #:cl #:parseq)) (in-package :apertium-stream-parser) (defrule stream () (char "a-z")) (trace-rule 'stream :recursive t) (parseq 'stream "a" :parse-error t)
Soapbox