Re[22]: Опциональные типы
От: alex_public  
Дата: 11.03.17 15:44
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Elkhound

V>http://scottmcpeak.com/elkhound/
V>

V>We present a hybrid algorithm that chooses between GLR and ordinary LR on a token-by-token basis, thus achieving competitive performance for determinstic input fragments.

V>На однозначных цепочках они получили скорость LALR(1), который, в свою очередь, работает со скоростью LL(1)/LR(0). А более быстрых алгоритмов парсинга не существует. Не реализаций (руки могут быть и кривыми), а именно алгоритмов.

О, а вот это довольно интересно. Генератор произвольных парсеров на C++, способный сгенерировать парсер C++ кода. И кстати вся грамматика C++ у них там задаётся одним простеньким файлом: http://scottmcpeak.com/elkhound/sources/elsa/cc.gr — не похоже на десятки человеко-лет, которыми меня тут пугали, говоря о записи грамматики C++ для Нитры. Правда из описания невозможно понять быстродействие данного продукта... Но в любом случае очень интересное решение.

Кстати, проект не остановился в своём развитие, как может показаться по датам на той страничке, а превратился в это https://github.com/dsw/oink-stack/ — обрёл реально полезное применение. )
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.