Lalr (2) pendurando mais
-
11-09-2019 - |
Pergunta
Lalr (2) é capaz de lidar com o caso pendurado naturalmente (sem regras especiais, como no LALR (1))?
Obrigado
Solução
É ambíguo, no entanto, não é um problema, porque um gerador de analisador LALR bem comportado resolverá a ambiguidade escolhendo a mudança em vez da escolha de redução. É isso que você deseja - o "else" para ser compatível com a instrução anterior "se". Portanto, a conclusão é: não há problema. Você só precisa entender a escolha padrão que o gerador de pastores cria para todas as ambiguidades de redes de mudança. Esse padrão pode ser substituído por regras desambiguadoras ou algo como o operador "%Prec" em "YACC".
Mas esse é um tópico mais avançado.
Outras dicas
Não, o problema pendurado é uma ambiguidade, portanto, nenhuma quantidade de lookahead ajuda.