Jednoduchá syntaxe Desátomatu:
Neterminál -> aA | @
epsilon se zapisuje buď pomocí speciálního znaku @ nebo prázdného pravidla.
terminál se zapisuje pomocí malých písmen, nebo znaku co nemají rozdílnou malou a velkou formu zápisu.
neterminál se zapisuje pomocí velkých písmen (z principu jednoduchého parseru nelze použít mnoho neterminálu, lze to obejít použitím diakritiky)
Terminál | Zápis |
---|---|
mezera | \s |
nový řádek | \n |
tabulátor | \t |
zavináč (@) | \@ |
Rozšířená syntaxe Desátomatu: (orientačně)
gramatika | → | přepis gramatika | definice_množiny gramatika | ε |
přepisovací pravidla: | ||
přepis | → | název - > pravidlo další_pravidla |
další_pravidla | → | | pravidlo další_pravidla | ε |
pravidlo | → | identifikace obsah_pravidla |
identifikace | → | id : | ε |
obsah_pravidla | → | části další_obsah |
části | → | terminál | řetězec | neterminál | semantická_akce |
další_obsah | → | , části další_obsah | ε |
terminál | → | název | * název | název @ změna |
řetězec | → | " text " |
neterminál | → | < název > |
semantická_akce | → | [ název ] |
definice množin: | ||
definice_množiny | → | množina = minus_sigma { obsah_množiny } |
minus_sigma | → | sigma - | ε |
obsah_množiny | → | název další_obsah_množiny |
další_obsah_množiny | → | , název další_obsah_množiny | ε |