Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Лексический/синтаксический/семантическ анализаторы 
V
    Опции темы
nerezus
  Дата 30.6.2007, 05:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: 3
Всего: 43



Нужно C++(без шаблонов) разобрать.
Не хочется писать анализатор. Очень не хочется. Что будем советовать?
Есть пара потенциальных вариантов типа сырцов gcc, сырцов doxygen, boost::sprtit, flex/bison, но еще не смотрел ничего

Что советуем?


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
apook
Дата 30.6.2007, 06:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 794
Регистрация: 12.7.2006

Репутация: 9
Всего: 23



Цитата(nerezus @  30.6.2007,  05:51 Найти цитируемый пост)
Не хочется писать анализатор.

А что еще можно сделать? Там я встречал в НЭТе где-то готовую библиотеку что то вроде abc как-то называется в Linux используется, но я сам написал "некрутой" анализатор мне хватило.


--------------------
Мои руки из дуба, голова из свинца ну и пусть ...
PM MAIL   Вверх
Goganchic
Дата 30.6.2007, 06:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 678
Регистрация: 18.6.2004

Репутация: нет
Всего: 5



Есть такое специальное средство, называется ANTLR. Оно позволяет создавать любые компиляторы / парсеры / лексеры. Советую его. Принцип работы такой: ты создаешь грамматику, а потом ANTLR генерирует по ней код на Си++ или  Java.
Хотя в принципе тебе потребуется составить анализатор....
PM Jabber   Вверх
Fazil6
Дата 30.6.2007, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 35
Всего: 60



я использую styxlib 1.7
позволяет получать по грамматике синтаксический и семантический анализатор на С
PM MAIL   Вверх
MAKCim
Дата 30.6.2007, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 52
Всего: 207



Цитата(nerezus @  30.6.2007,  05:51 Найти цитируемый пост)
Нужно C++(без шаблонов) разобрать.

 smile 
а зачем, если не секрет?


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Void
Дата 30.6.2007, 09:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 40
Всего: 173



GCC-XML.

Elsa и Oink.

Браться за генераторы парсеров не стоит.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
Daevaorn
Дата 30.6.2007, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 51
Всего: 70



Цитата(MAKCim @ 30.6.2007,  10:12)
Цитата(nerezus @  30.6.2007,  05:51 Найти цитируемый пост)
Нужно C++(без шаблонов) разобрать.

 smile 
а зачем, если не секрет?

Ага, а то boost::spirit и нет проблем.
PM MAIL WWW   Вверх
nerezus
  Дата 30.6.2007, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: 3
Всего: 43



Цитата

а зачем, если не секрет?
 пару изменений в синтаксисе сделать )


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
MAKCim
Дата 30.6.2007, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 52
Всего: 207



Цитата(nerezus @  30.6.2007,  10:26 Найти цитируемый пост)
пару изменений в синтаксисе сделать )

ясно  smile 
бери исходники GCC и это



--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
nerezus
  Дата 30.6.2007, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: 3
Всего: 43



MAKCim, а к примеру gcc под винду легко скомпилить?


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
Любитель
Дата 30.6.2007, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Цитата(nerezus @  30.6.2007,  05:51 Найти цитируемый пост)
Что советуем?

Что душе ближе  smile 

Я из всего сего лично со спиритом в своё время лишь работал (gcc, doxygen, конечно юзаю, но не сорсы smile ), делал в частности разбор Модула-2 подобной вещи. Мне так потому спирит нравиться. А так - смотри по ситуации. Если тебе компилятор нужен, то бесспорно легче всего gcc-шные сорсы брать и раскапывать.


--------------------
PM MAIL ICQ Skype   Вверх
Goganchic
Дата 30.6.2007, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 678
Регистрация: 18.6.2004

Репутация: нет
Всего: 5



Цитата(nerezus @ 30.6.2007,  10:26)
Цитата

а зачем, если не секрет?
 пару изменений в синтаксисе сделать )

а зачем?
PM Jabber   Вверх
nerezus
  Дата 30.6.2007, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: 3
Всего: 43



Цитата

а зачем?
 а надо =)

походу начну со спирита )


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
Void
Дата 30.6.2007, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 40
Всего: 173



nerezus, доложи о результатах непременно smile
К парсерам и трансляции у меня не праздный интерес.
Спирит у меня оставил впечатление инструмента не на своём месте. Связываться с ним для разбора сложного языка я бы не стал. Может, просто не умею готовить smile

И взгляни ещё на Stratego вместе с Transformers.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
Любитель
Дата 30.6.2007, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Цитата(Void @  30.6.2007,  15:52 Найти цитируемый пост)
Спирит у меня оставил впечатление инструмента не на своём месте.

А почему так? :(

Цитата(Void @  30.6.2007,  15:52 Найти цитируемый пост)
 Связываться с ним для разбора сложного языка я бы не стал.

Потихоньку-потихоньку - и ничего ведь сложного... smile Насчёт производительности полученного чуда - ничего сказать не могу, не знаю :|


--------------------
PM MAIL ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0580 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.