Как мы интерпретируем общие правила, используя Java? - PullRequest
1 голос
/ 21 января 2012

Скажите, что у меня есть очень простое правило, подобное приведенному ниже

if a<b
  then set a=25
else set a=-25

Мне нужно оценить это, используя мой Java. Каков наилучший подход для такого анализа? Использование регулярных выражений может быть очень сложным, и его будет очень сложно поддерживать правильно?

Может кто-нибудь предложить подход? Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.

Ответы [ 2 ]

1 голос
/ 21 января 2012

В зависимости от того, насколько / насколько вы можете настроить синтаксис правил, вы можете использовать Groovy или JRuby;они оба очень хороши в реализации тесно интегрированных DSL.Я бы серьезно отнесся к этому подходу перед внедрением внешнего DSL, хотя Antlr делает его довольно простым.

1 голос
/ 21 января 2012

Если ваш синтаксис регулярный, вы можете использовать регулярные выражения.Если это не так, вам нужно использовать более сложные инструменты, такие как Lexers и Parser: например, Antlr или Yacc / Lex / Bison .

Если вы этого не сделаетеЯ знаю, много знаю о дизайне языка, я предлагаю вам прочитать книгу на эту тему, прежде чем погрузиться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...