Perguntas com a marcação «parsers»

Perguntas sobre algoritmos que decidem se uma determinada sequência pertence a uma linguagem formal fixa.

1
Um analisador Earley pode ser transformado em um analisador difuso semelhante ao Levenshtein Automata Algo for DFA?
Existe uma maneira de executar a análise difusa (aceita seqüências de caracteres mesmo com erros de digitação a uma certa distância de edição), com um DFA e um Autômato Levenshtein construído em tempo de execução da palavra de entrada. É possível fazer algo semelhante com um analisador Earley? Estou achando …



2
Existe uma resolução diferente para o problema do “outro pendente” que não seja “correspondência mais próxima”?
Os seguintes presentes gramática livre de contexto uma "pendurado outra" tipo ambigüidade (imaginar que aaa significa if expr thene bbb significa elsee ccc está para algum outro tipo de instrução ou bloco): S→aSbS|aS|cS→aSbS|aS|c \begin{aligned} S &\rightarrow aSbS \;|\; aS \;|\; c\\ \end{aligned} Por exemplo,aacbcaacbcaacbcpode ser analisado como(a(acbc))(a(acbc))(a(acbc))ou como(a(ac)bc)(a(ac)bc)(a(ac)bc)(esta é a …



2
Nome correto para um analisador de descida recursiva que usa loops para manipular a recursão esquerda?
Essa gramática é deixada recursiva: Expression ::= AdditionExpression AdditionExpression ::= MultiplicationExpression | AdditionExpression '+' MultiplicationExpression | AdditionExpression '-' MultiplicationExpression MultiplicationExpression ::= Term | MultiplicationExpression '*' Term | MultiplicationExpression '/' Term Term ::= Number | '(' AdditionExpression ')' Number ::= [+-]?[0-9]+(\.[0-9]+)? Portanto, em teoria, a descida recursiva não funcionará. Mas, explorando …




Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.