JavaME-рекомендации подходящего грамматического компилятора?

StackOverflow https://stackoverflow.com/questions/658572

Вопрос

Я хочу проанализировать некоторые данные, и у меня есть грамматика BNF для их анализа.Кто-нибудь может порекомендовать какие-либо компиляторы грамматики, способные генерировать код, который можно использовать на мобильном устройстве?

Поскольку это для JavaME, сгенерированный код должен быть:

  • Надеюсь, довольно маленький
  • Низкая зависимость от экзотических библиотек Java
  • Не зависит ни от каких jar-файлов среды выполнения.
Это было полезно?

Решение

Я использовал JFlex (Джфлекс ) раньше, и я знаю, что это удовлетворяет вашим второму и третьему требованиям.Но я не знаю, насколько большим может быть сгенерированный код.В соответствии с руководство пользователя, он генерирует упакованную таблицу DFA по умолчанию, так что это может быть не так уж плохо.

Другие советы

Первый вопрос заключается в том, есть ли у вас существующее грамматическое определение?Когда я портировал грамматику LALR на Java, я использовал JFlex / CUP.

Если вы начинаете с нуля, я бы посоветовал вам использовать JavaCC / FreeCC, который является синтаксическим анализатором LL (k).Это довольно хорошо документировано, и в нем нет зависимостей от времени выполнения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top