Здравствуйте, Ночной Смотрящий, Вы писали:
M>>Ну, ок, возможно. Где бы еще посмотреть на что-то такое готовое, чтобы понять, как оно делается
НС>Примеры к antlr? Можно начать с калькулятора.
Я пока не буду целиком на всё отвечать, пока ещё раз решил попробовать antlr (кстати, javacc/sablecc лучше/хуже/удобнее/быстрее, не в курсе, не пробовал? JavaCC вроде в сипипи умеет, про саблю особо не искал), поднять свой технологический уровень, так сказать, и найти базу для дальнейшей дискуссии.
Хочу сгенерить парсер плюсиков. Грамматику взял тут —
https://github.com/antlr/grammars-v4
По умолчанию генерится в джаву. Как через мавен сделать, чтобы генерился плюсовый код, пока не понял. Решил пойти по простому пути —
https://en.wikipedia.org/wiki/ANTLR#Example
| Тут, внезапно |
| "generator=cpp:struct как бы намекает, что вместе с целевой областью тут какая то мешанина инструкций для процессинга, зачем оно там?"
Изначально у меня генераторы для типов задавались из командной строки. Потом я прикрутил в язык атрибуты, после чего (потому что могу) прикрутил атрибут generator с возможностью задания генератора для разных target-языков. Мне такое зашло, как и части коллег. Остальные, по старинке, используют командную строку. Не знаю, в какой последовательности аналогичные фичи (и когда — думаю, давно уже, но я не подглядывал) появились в ANTLR, но они есть. Но там ведь умные люди сидят, зачем эта мешанина? |
| |
// Common options, for example, the target language
options
{
language = "CSharp";
}
Присунул, куда показалось, надо, но что-то пошло
не такАвтор: Marty
Дата: 13.09.20
Если не жалко, помоги мне поднять мой технологический уровень