Iterace

Jednou z výhod metody kombinátorového vytváření parserů je libovolná rozšiřitelnost množiny konstruktorů. Zatímco v generátorech parserů, jímž je třeba Happy [17], jsme omezeni na pevně danou množinu konstruktorů, kterou nám formalismus pro popis gramatiky poskytuje, při kombinátorovém vytváření parserů může být tato množina libovolně rozšiřována. Jak již bylo uvedeno, parsery zde hrají roli stavebních kamenů a my můžeme definovat libovolné množství konstruktorů, které jejich syntézou vytvářejí nové, zpravidla složitější parsery řešící konkrétní úlohy.

Tato kapitola je věnována různým variantám iterace, které lze použít při analýze různých syntaktických konstrukcí.

V její první části vytvoříme mutátory odpovídající operátorům *, +?, jenž pocházejí z formalismu regulárních výrazů. V části druhé se budeme věnovat iteraci se separátory; na ni nepřímo naváže část [*] věnovaná iteraci se sémanticky relevantními separátory, ve které budou například rozebrány způsoby ananalýzy aritmetických výrazů.



Subsections

dvorka 2013-12-31