La grammatica generativa di un linguaggio di programmazione è un insieme di regole su come scrivere stringhe , dette espressioni.

Ogni grammatica generativa è un’algebra.

Se si chiama un programma noto , allora una variabile.

Se si chiama un programma qualsiasi , allora una meta-variabile.

Un programma può essere composto da più programmi.

La sintassi per definire le espressioni di una grammatica generativa è la seguente:

Il carattere esprime l’OR logico.

Ad esempio, la grammatica del linguaggio Exp è

Ovviamente, le definizioni delle espressioni e sono ricorsive.