doublench21
@doublench21

Лексер для подсветки синтаксиса языка заданного грамматикой BNF?

Доброго времени суток.
Хотел реализовать подсветку синтаксиса для языка используя для этого лексер. Суть проста, находим токен, обрамляем её набором символом для того или иного цвета. Но дело в том, что токены языка описаны в BNF, а lex/flex работают с регулярными выражениями для записи токенов. Вопрос собственно в том, как построить лексер для грамматики BNF?
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ответы на вопрос 2
zagayevskiy
@zagayevskiy
Android developer at Yandex
Ты токен с терминалом/нетерминалом не путаешь? Потому что для лексического анализа и разбора на токены грамматика в форме BNF не нужна. Точнее, она будет очень простой - тупо перечисление всех токенов.
Ответ написан
jcmvbkbc
@jcmvbkbc
http://dilbert.com/strip/1998-08-24
qF5rfVj.png

Эта грамматика легко сводится к регулярным выражениям flex.

как построить лексер для грамматики BNF

парсер для грамматики нужен, если ты собираешься подсвечивать конструкции языка.
Ну и вообще bison для этого есть, раз уж ты с flex'а зашёл.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы