Análise sintática (computação): diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
m Página marcada como esboço, usando FastButtons
m Ficheiro → Imagem e etc.
Linha 1:
[[FicheiroImagem:Parsing-example.png|thumb|right|250px|Exemplo da '''análise sintática''' de uma [[expressão matemática]]. O resultado é uma [[árvore (estrutura de dados)|árvore]] da expressão]]
Em [[ciência da computação]] e [[linguística]], '''análise sintática''' (também conhecida pelo termo em [[Língua inglesa|inglês]] '''''parsing''''') é o processo de analisar uma sequência de entrada (lida de um [[arquivo de computador]] ou do [[teclado (computador)|teclado]], por exemplo) para determinar sua estrutura gramatical segundo uma determinada [[gramática formal]]. Essa análise faz parte de um [[compilador]], junto com a [[análise léxica]] e [[análise semântica]].
 
Linha 14:
 
== Determinismo ==
 
Analisadores sintáticos são determinísticos se sempre souberem que ação tomar independentemente da entrada de texto. Este comportamento é desejado e esperado na [[compilador|compilação]] de uma [[linguagem de programação]]. No campo de [[processamento de linguagem natural]], pensava-se que essa a análise sintática determinística era impossível devido à ambiguidade inerente das linguagens naturais, em que diversas sentenças possuem mais de uma possível interpretação. Entretanto, Mitch Marcus propôs em [[1978]] o analisador sintático Parsifal<ref>{{Referência a livro
| Autor = Mitchell P. Marcus
Linha 29 ⟶ 28:
</ref>, que consegue lidar com ambiguidades ainda que mantendo o comportamento determinístico.
 
{{Referências}}
{{ref-section|Notas e referências}}
 
=={{ Ver também}} ==
* [[Interpretador]]es
* [[Compilador]]es
** [[Análise léxica]]
** [[Análise semântica]]
 
 
{{Esboço-computação}}