Re[24]: Опциональные типы
От: WolfHound  
Дата: 11.03.17 13:31
Оценка:
Здравствуйте, vdimas, Вы писали:

V>У меня лучшее только то, что я делаю на основной своей работе.

Учитывая, что ты тут несёшь я в этом сомневаюсь.

V>Пока что по твоим словам выходит так, что на алгоритм восстановления было потрачено 8 лет?

Это тебе голоса непели.
Плотно этим вопросом я года 3 занимался.
И это очень быстро. Автор ATNLR на свой парсер потратил 25 лет. И результат хуже.

WH>>Так я уже посмотрел. И ничего внятного не нашёл.

V>Так искал.
Так ты тоже ничего найти не можешь.

V>Я за 10 минут нашел живые современные проекты на эту тему:

Мне не нужны современные. Мне нужны те которые работают хорошо.

WH>>Это пользователь должен описывать правила восстановления руками. Ахринеть.

V>Нет, он должен помечать нетерминалы, которые интересуют.
V>Потому что в правилах до половины нетерминалов могут быть промежуточными, ни разу не интересными для восстановления до них.
Вот это и есть ручное описание правил восстановления.
В нитре это делать не нужно. Там даже такой возможности нет.
Всё работает в полностью автоматическом режиме.
Прикинь парсер сам понимает, что нужно удалить, что добавить и где начинается нормальный текст.

WH>>1)Это куча мутной работы.

V>Это примерно такая же работа, как в языке расширенных регулярных выражений отличать конечные правила от промежуточных.
Что за бред опять?

WH>>2)Не работает если в грамматике появляются новые правила, которые пользователь не предусмотрел.

V>Ты про конкретно Бизон или вообще?
Вообще.

V>Если вообще — то храни себе пометки у "существенных" нетерминалов, т.е. храни некоторую метаинформацию.

Не работает. Ибо в одних случаях они существенные. В других нет.
Нужно на лету разбираться что к чему.

WH>>Если бы нитра текла меня бы тут на смех всем RSDN'ом подняли.

V>А как бы она у тебя текла на GC?
Да там не важно на ГЦ она или нет. Там всё и без ГЦ переделать можно. И ничего течь не будет.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.