JavaME-подходящие рекомендации компилятора грамматики? - PullRequest
3 голосов
/ 18 марта 2009

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

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

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

Ответы [ 2 ]

1 голос
/ 04 июня 2009

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

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

1 голос
/ 18 марта 2009

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

...