:: Estás en: Inicio / Ejemplos
/*
 * Ejemplo de transformacion de una gramatica que no es LL(1) a LL(1).
 */

global
{
    analysis    LL1;
    nonterminal S, A, B;
    terminal    v, w, x, y, z;
}

/*
 * Gramatica que no es ll1
 */
grammar gram_no_ll1
{
    S := w A z | x B z | w B y | x A y | w B z;
    A := v;
    B := v;
}

/*
 * Gramatica que es ll1
 */
grammar gram_ll1
{
    nonterminal S1, S2, C, D;

    S  := w S1 | x S2;
    S1 := A C;
    S2 := A D;
    A  := v;
    D  := z | y;
    C  := y | z;
}