Einfache Grammatiken

Mit der kleinen Bibliothe Parser, können Sie kontextfreie Grammatiken in Haskell definieren.

Beispiel: Grammatik der Sprache:
\[L_0 = \{a^nb^n | n = 0, 1, \dots\}\] Wird durch folgende Grammatik erzeugt:
\[ l_0 \rightarrow a l_0 b\\ l_0 \rightarrow \epsilon \] Die Formulierung dieser Grammtik finden Sie in der Lösungseingabe definiert.

 

Definieren Sie in Haskell Grammatiken für die folgenden drei Sprachen:

Die Grammatiken sollen dabei frei von Linksrekursionen sein.