Estratégias de Análise Sintática Top-Down e LL(1)
Estratégia de Desenvolvimento: Top-Down (Descendente)
Objetivo: Encontrar uma derivação mais à esquerda para uma cadeia de entrada, construindo a árvore gramatical a partir da raiz, criando os nós em pré-ordem (busca em profundidade).
Implementação
- Consiste em um conjunto de procedimentos, um para cada não-terminal da gramática;
- A execução começa com a ativação do procedimento referente ao símbolo inicial;
- O procedimento retorna sucesso se toda a cadeia de entrada puder ser derivada;
- As produções são escolhidas de modo arbitrário.
Problemas
- Uma gramática recursiva à esquerda pode levar o analisador a um laço infinito;
- O retrocesso (backtracking) causa repetição na leitura da entrada, custando tempo e dificultando a identificação