Какой лучший инструмент для создания парсера в Java для моей грамматики языка? - PullRequest
3 голосов
/ 30 марта 2009

Я занимаюсь разработкой небольшого языка программирования, основанного в основном на стандарте C99, и я уже написал довольно приличный лексер на языке Java, а теперь я хочу сгенерировать парсер Java из грамматики. Я знаю, что есть Bison , но это, кажется, только генерирует C-код. Я ищу приложение, которое позволит мне ввести мою грамматику и создать полный класс синтаксического анализатора в коде Java. Читая другие сообщения SO по смежным темам, я нашел ANTLR, но мне интересно, знает ли кто-нибудь в SO о лучшем инструменте?

спасибо!

Ответы [ 3 ]

3 голосов
/ 30 марта 2009

Еще одна пара, на которую стоит обратить внимание: JavaCC и SableCC (я давно не видел SableCC).

2 голосов
/ 30 марта 2009

Я был весьма впечатлен BNFC , который способен генерировать парсеры в Java, а также в C, C ++, C #, F #, Haskell и OCaml.

0 голосов
/ 30 марта 2009

Домашняя страница JFlex на http://jflex.de указывает, где найти инструменты типа Bison, которые могут ориентироваться на Java:

http://byaccj.sourceforge.net/ http://www2.cs.tum.edu/projects/cup/ http://www.antlr.org/

...