Некоторые спрашивают, какие есть конкретные мысли по этому поводу.
По-моему я уже всё это писал, но мне не лениво повторить:
1) берём русскую разработку русского профессора - парсер Whale Calf
Александр Охотин
http://users.utu.fi/aleokh/whalecalf/
это пусть и медленный алгоритм (N^3), зато мне кажется он практически удобнее чем LALR(1)
2) берём грамматику EBNF откуда-нибудь с GitHub
3) берём какой-нибудь язык с большим количеством разработчиков (например C#), и переписываем код
Чтобы не генерировать целевой код (потому что для этого нужен язык, а его нет), выставляем наружу API (т.е. способ для обхода автоматически построенного SPPF)
Вы скажете, мол C# - это не русский язык. Ну так не всё сразу. Сначала русские описания грамматик, потом русский ассемблер на их базе, потом русский аналог C, а дальше сообщество заведётся и начнёт генерировать. Да даже одну только новость о запуске GitLab Яр-ом можно распиарить на всю страну.
У меня встречный вопрос - а какие идеи по этому поводу у вас?
Отредактировано Лис (2017-06-05 07:44:18)