The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск генератора лексических анализаторов re2c 2.0"
Отправлено skvadrik, 22-Июл-20 23:26 
Я не автор текста на википедии, но там написано "Together with the Lemon parser generator, it is used in BRL-CAD as a platform-agnostic and easily compilable alternative to Flex and Bison". Тут нельзя начало предложения оторвать без потери смысла: re2c сравнивается с fleх, а lemon -- с bison. (Подредактирую статью, чтобы не было неоднозначности.)

re2c -- это генератор лексеров, а не парсеров. Он умеет регулярные грамматики (Type-3 по классификации Хомского), и не умеет контекстно-свободные (Type-2) и выше. Для этих двух классов грамматик используются разные алгоритмы разбора: для регулярных -- конечные автоматы (finite state automata), а для контекстно-свободных -- стековые автоматы (pushdown automaton). Про всё это подробнее можно прочитать в книге "Parsing Techniques - A Practical Guide" [1].

re2c никогда не будет уметь контекстно-свободные грамматики, потому что это была бы уже другая программа с другим алгоритмом и пользовательским интерфейсом. У меня на гитхабе есть lalr2c [2], что-то в духе re2c для LALR(1) грамматик -- он тоже генерирует не-табличные парсеры и позволяет пользователю писать интерфейсный код. Но он пока не вышел за рамки прототипа.

[1] https://dickgrune.com/Books/PTAPG_1st_Edition/BookBody.pdf

[2] https://github.com/skvadrik/lalr2c

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру