Pergunta

Eu quero analisar alguns dados, e eu tenho uma gramática BNF para analisá-lo com. Alguém pode recomendar qualquer compiladores de gramática capaz de gerar código que pode ser usado em um dispositivo móvel?

Uma vez que este é para JavaME, o código gerado deve ser:

  • Esperemos que muito pequena
  • Baixa dependências na exótica Java bibliotecas
  • Não dependente de quaisquer arquivos de tempo de execução jar.
Foi útil?

Solução

Eu tenho usado JFlex antes, e eu sei que satisfaz os seus segundo e terceiro requisitos. Mas eu não sei quão grande é o código gerado pode ser. De acordo com a manual, ele gera uma tabela DFA embalado por padrão, por isso pode não ser muito ruim.

Outras dicas

A primeira questão é que você tem uma definição de gramática existente? Quando eu tenho portado uma gramática LALR para Java, eu usei JFlex / CUP.

Se o seu começando do zero, eu sugiro que você use JavaCC / FreeCC, que é um LL (k) parser. Está muito bem documentado e não há dependências de tempo de execução.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top