Здравствуйте, megawatt, Вы писали:
A>>Я так понял он на Яве, а на Си++/C# ничего нет? M>Плохо понял, antlr написан на java
Ну вот это мне и не нравится, вокруг людей знающих Яву нет. Мало ли что, даже спросить не у кого. Файла не хватит или строчки в конфиге, а я кучу времени потрачу.
M>но парсер генерится в виде кода на C++
А есть такая штука чтобы сама была на Си++/C# и генерировала C# (Даже С# 2.0)? Или я уже много хочу?
Да и ещё, я тут прочитал про всякие Yacc/Bison и как я понял у них проблемы с многопоточночтью и запуском сразу нескольких парсеров. Это правда?
Здравствуйте, adontz, Вы писали:
A>Здравствуйте, megawatt, Вы писали:
A>Ну вот это мне и не нравится, вокруг людей знающих Яву нет. Мало ли что, даже спросить не у кого. Файла не хватит или строчки в конфиге, а я кучу времени потрачу.
Хм... В данном случае Вы выступаете как пользователь конечного продукта, какая разница начем он написан? А весь процесс
инсталяции описан на сайте
A>Да и ещё, я тут прочитал про всякие Yacc/Bison
Yacc морально устарел, более функциональный аналог flex
A> и как я понял у них проблемы с многопоточночтью и запуском сразу нескольких парсеров. Это правда?
Да правда, но различными костылями лечится
Здравствуйте, megawatt, Вы писали:
M>Хм... В данном случае Вы выступаете как пользователь конечного продукта, какая разница начем он написан? А весь процесс M>инсталяции описан на сайте
Ну вот Exception in thread "main" java.lang.NoClassDefFoundError: Files\Antlr-2/7/5\lib\antlr/jar и чё мне с ним делать?
Не-не, давайте что-то такое в чём я понимаю
Здравствуйте, adontz, Вы писали:
A>Здравствуйте, megawatt, Вы писали:
M>>Хм... В данном случае Вы выступаете как пользователь конечного продукта, какая разница начем он написан? А весь процесс M>>инсталяции описан на сайте
A>Ну вот Exception in thread "main" java.lang.NoClassDefFoundError: Files\Antlr-2/7/5\lib\antlr/jar и чё мне с ним делать? A>Не-не, давайте что-то такое в чём я понимаю
Здравствуйте, adontz, Вы писали:
A>А у того что генерирует antlr как с многопоточность и запуском нескольких копий?
Отлично, прадва перфоманс по сравнению с bison/flex страдает
Здравствуйте, megawatt, Вы писали:
A>>А у того что генерирует antlr как с многопоточность и запуском нескольких копий? M>Отлично, прадва перфоманс по сравнению с bison/flex страдает
Ну для меня это не очень критично, в конце концов код набирается не так быстро, чтоб я его не успел распарсить. К тому же наверное можно хитрить, перепарсивать только при наборе/стирании } или ;
А aNTLR точно умеет C# код генерировать? а то я сделал
options
{
language = "CSharp";
}
и в результате всё равно какое-то typedef, define в сгенерированном коде
A>А aNTLR точно умеет C# код генерировать? а то я сделал A>options A>{ A> language = "CSharp"; A>} A>и в результате всё равно какое-то typedef, define в сгенерированном коде
А что, если попробовать gccxml,
потом взять генеримый xml и из него сгенерить что угодно?
A>Тыканье в документацию и ссылки на готовые решения приветствуется.
вот действительно откройте документацию по .NET и почитайте внимательно A>Глобальная задача — сделать вменяемую подсветку синтаксиса и автокомплит для языка очень похожего на Си++.
Здравствуйте, Аноним, Вы писали:
A>>Тыканье в документацию и ссылки на готовые решения приветствуется. А>вот действительно откройте документацию по .NET и почитайте внимательно
Я бы оценил сложность создания парсера для С++ на основе ANTLR в человеко-годы (или, может быть, даже десятки человеко-лет). Кстати, давненько уж видел такой проект (ЕМНИП, именно на ANTLR) — он был даже в исходниках. Но попытки запустить его на сколько-либо отличном от тривиального коде ни к чему не привели . Да и в самом описании проекта говорилось о том что они ещё очень далеки от полноценной поддержки стандарта.