Hi, In the compilation of the or pattern the sk is made a lambda but not the fk hence the observed geometric explosion. I have a fix for this that works but intend to talk with foof about it to fix ithe upstream matcher. There is really no need to change the doc The fix is easy (I beleve). Actually a small diff for it shows shows, 482,483c482 < (let ((ffk (lambda () (match-gen-or-step v q g+s sk fk i)))) < (match-one v p g+s sk (ffk) i))) --- > (match-one v p g+s sk (match-gen-or-step v q g+s sk fk i) i)) /Stefan